我有三個HTML下拉列表來選擇年份,月份和日期。如果選定的年份等於當前年份,則第二個和第三個列表僅顯示直至當前日期的月份和日期。 我想用javascript編碼。 這裏我面臨的問題是,當用戶首先選擇日期或月份時,它將如何執行?在html下拉列表中驗證日期
1
A
回答
0
例。如果首先選擇月份和日期,則除非所選值不再有效,否則它們不會更改。如果它們是無效的,他們將重置爲1
HTML
<body>
<select name="month" id="month"></select>
<select name="day" id="day"></select>
<select name="year" id="year"></select>
</body>
的JavaScript(W/JQuery的)
<script type ="text/javascript" src="http://code.jQuery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var year = new Date().getFullYear();
// load years
for (var i=2000; i<=year; i++) $("#year").append('<option value=' + i + '>' + i + '</option>');
// load months
for (var i=1; i<=12; i++) $("#month").append('<option value=' + i + '>' + i + '</option>');
// load days
for (var i=1; i<=31; i++) $("#day").append('<option value=' + i + '>' + i + '</option>');
});
$(function() {
$('#year').change(function() {
var now = new Date();
if ($('#year').val()==now.getFullYear()) {
$('#month option').each(function() {
if ($(this).val()>(now.getMonth()+1)) $(this).remove();
});
} else {
for (var i=1; i<13; i++)
if ($("#month option[value='" + i + "']").val()==undefined)
$("#month").append('<option value=' + i + '>' + i + '</option>');
}
checkMonth();
});
$('#month').change(checkMonth);
});
function checkMonth() {
var now = new Date();
if ($('#year').val()==now.getFullYear() && $('#month').val()==(now.getMonth()+1)) {
$('#day option').each(function() {
if ($(this).val()>now.getDate()) $(this).remove();
});
} else {
var days = 31;
var month = $('#month').val();
if (month==2) {
if (($('#year').val() % 4) == 0) days = 29; // leap year
else days = 28;
} else if (month==2 || month==4 || month==6 || month==9 || month==11) {
days = 30;
}
for (var i=1; i<32; i++)
if (i>days)
$("#day option[value='" + i + "']").remove();
else if ($("#day option[value='" + i + "']").val()==undefined)
$("#day").append('<option value=' + i + '>' + i + '</option>');
}
}
</script>
0
這是你想要的嗎?試試這個網址希望這將有助於你 演示 - >
https://www3.ntu.edu.sg/home/ehchua/programming/webprogramming/jsdemo/JSDatePicker.html
來源 - 以下> https://www3.ntu.edu.sg/home/ehchua/programming/webprogramming/JavaScript_Examples.html
+0
這個例子甚至是不正確的。它允許你在任何一年選擇二十三號,並且絕不允許你在任何一個月中選擇第31號 – ShaneMit
相關問題
- 1. Jquery下拉日期驗證
- 2. JavaScript創建HTML日期下拉列表
- 3. asp.net日期驗證與三個下拉列表
- 4. 驗證下拉列表
- 5. jQuery驗證下拉列表
- 6. 下拉列表驗證
- 7. 驗證2下拉列表
- 8. 下拉列表驗證
- 9. 'required'驗證下拉列表
- 10. javascript下拉列表驗證
- 11. 下拉列表驗證
- 12. PHP日期下拉列表
- 13. 驗證mvc4中的下拉列表?
- 14. asp.net中下拉列表的驗證器
- 15. 下拉列表中的JavaScript驗證
- 16. 驗證PHP中的下拉列表
- 17. 驗證MVC3中的下拉列表?
- 18. 驗證MVC中的下拉列表
- 19. Yii在change上驗證下拉列表
- 20. 在jquery驗證下拉列表
- 21. 驗證下拉列表以獲得基於期權正確的日期選擇
- 22. Javascript HTML下拉驗證
- 23. Excel驗證下拉列表長表
- 24. 使用日期下拉菜單並進行列驗證
- 25. 下拉列表驗證上使用jQuery
- 26. PHP年齡驗證下拉列表
- 27. ASP.NET枚舉下拉列表驗證
- 28. 使用jquery驗證下拉列表
- 29. 驗證複選框或下拉列表
- 30. 下拉選項列表驗證與bvalidator
發佈您的代碼,有人可以幫你 –
我認爲你必須限制日期範圍。如果你給出更好的解釋,那麼我可以幫忙。更好地做一個小提琴 – murli2308
代碼說話不僅僅是單純的詞..貼上你的代碼 – jaggs