Menu
Hi guys, I know almost nothing in JS, I wonder if some of you can help me with this simple issue. I really appreciate.
I have 3 select dropdown which need to populate the value of a field in the format [I]yyyy-mm-dd
<INPUT NAME=”date” VALUE=”[I]yeardropdown+monthdropdown+daydropdown
<form action=”” name=”someform”>
<select id=”daydropdown”>
</select>
<select id=”monthdropdown”>
</select>
<select id=”yeardropdown”>
</select>
Not that the monthdropdown has format ‘Jan’,’Feb’,’Mar’,’Apr’´… but the filed needs to be numeric yyyy-mm-dd
Can anyone help me? Thank you a lot
/max
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Value to a field</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
<!--
body{
color: #000;
background-color: #f8f8ff;
font-family: Verdana, Helvetica;
}
select{
width: 150px;
}
#calculator{
position: absolute;
top: 200px;
left: 0px;
width: 500px;
border: 1px dashed #000;
text-align: center;
padding: 10px 10px 10px 10px;
}
input.result{
text-align: center;
font-weight: bold;
width: 200px;
}
-->
</style>
</head>
<body>
<div id="calculator">
<form action="" name="someform">
<input class="result" name="result" value="" />
<br /><br />
<select id="daydropdown" name="daydropdown" onchange="calculate('dd',this[selectedIndex].value)"><option value="0">Select day</option></select>
<input type="hidden" id="dd" name="dd" value="">
<select id="monthdropdown" name="monthdropdown" onchange="calculate('mm',this[selectedIndex].value)"><option value="0">Select month</option></select>
<input type="hidden" id="mm" name="mm" value="">
<select id="yeardropdown" name="yeardropdown" onchange="calculate('yy',this[selectedIndex].value)"><option value="0">Select year</option></select>
<input type="hidden" id="yy" name="yy" value="">
<br /><br />
<input type="reset" value="reset" onfocus="this.blur()" />
</form>
</div>
<script language="JavaScript" type="text/javascript">
<!--
document.getElementById("calculator").style.left = parseInt(document.body.clientWidth/2) - 250 + "px";
var frm = document.someform;
var spacer = " - ";
var months = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
// creating day's options
for(var i = 1; i < 32; i++){
var newElem = document.createElement("OPTION");
newElem.text = i;
newElem.value = i;
frm.daydropdown.options.add(newElem);
}
// creating month's options
for(var i = 0; i < months.length; i++){
var newElem = document.createElement("OPTION");
newElem.text = months[i];
newElem.value = i + 1;
frm.monthdropdown.options.add(newElem);
}
// creating year's options
for(var i = 1971; i < 2008; i++){
var newElem = document.createElement("OPTION");
newElem.text = i;
newElem.value = i;
frm.yeardropdown.options.add(newElem);
}
function calculate(k,n){
if(n < 10){n = "0" + n;}
frm[k].value = n;
frm.result.value = frm.yy.value + spacer + frm.mm.value + spacer + frm.dd.value;
}
frm.onreset = function(){
frm.dd.value = "";
frm.mm.value = "";
frm.yy.value = "";
}
window.onload = function(){frm.reset();}
//-->
</script>
</body>
</html>
if(theDays > numDays){
for (var i=0; i<(theDays-numDays); i++){
selDay.options[selDay.options.length-1] = null
}
}
if(numDays > theDays){
for(var i=0; i<(numDays-theDays); i++){
newOption = new Option(selDay.options.length+1);
selDay.add(newOption);
}
}
}
else{form[select+'Year'][0].selected = true};
form[select+'Month'][thisMonth].selected = true;
form[select+'Day'][thisDay-1].selected = true;
setDays(select);
}
}
else{
setDays(select);
}
}
var endDate = form.endMonth.value+' ';
endDate+= form.endDay.value+' ';
endDate+= form.endYear.value;
if(new Date(startDate)>new Date(endDate)){
alert("Not a Valid Date!nnPlease choose another end date.");
return false;
}
else{ return true };
}
0.1.9 — BETA 5.17