日期下拉框:
分享下,逻辑不是很难,但是在写的时候遇到了一些问题,比如说没转化为year下拉框取到的值没有转化为int型,还有就是for循环竟然少了判断条件(我服)导致系统崩溃【当做一个教训吧,下次可以作为类似情况debug需要注意的一个要点】
<script type="text/javascript">
$(document).ready(function () {
change_1();
});
</script>
在使用jQuery之前需要引入jQuery库
<script type="text/javascript">
function change_1() {
$("#selDay_1").empty();
var year = parseInt($("#selYear_1").val());
var month = parseInt($("#selMonth_1").val());
var str = "";
for (var i = 1; i <= getDayNumber(year, month) ; i++) {
str += "<option>" + i + "</option>";
}
$("#selDay_1").append(str);
}
function getDayNumber(year, month) {
var days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
if (2 == month && 0 == (year % 4) && (0 != (year % 100) || 0 == (year % 400))) {
days[1] = 29;
}
return(days[month - 1]);
}
</script>
<select id="selYear_1" name="UtilityYear" onchange="change_1()">
<option>2014</option>
<option>2015</option>
<option>2016</option>
</select>
<select id="selMonth_1" name="UtilityMonth" onchange="change_1()">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>
<select id="selDay_1" name="UtilityDay">
@*<option>1</option>
<option>2</option>*@
</select>