我有两个输入字段holidayDate和Description(id = tags)
<html>
<head>
<script type="text/javascript">
$(document).ready(function() {
$('#holidayDate').datepicker();
var availableTags = ["New years Day", "Martin Luther King Day","Groundhog Day", "Valentine's Day", "Washington's Birthday",
"Easter", "Earth Day", "National Arbor Day", "Mother's Day", "Memorial Day", "Flag Day", "Father's Day", "Independence Day",
"Labor Day", "Columbus Day", "Halloween", "Veterans Day", "Thanksgiving Day", "Pearl Harbor Remembrance Day", "Christmas Day"];
$("#tags").autocomplete({source:availableTags});
$('#holidayDate').change(function() {
var dateString = $(this).val().substring(0, 5);
var res = "";
switch (dateString) {
case '01/01': res = availableTags[0]; break; //If date entered, then return holiday
case '02/02': res = availableTags[2]; break;
case '02/14': res = availableTags[3]; break;
case '04/22': res = availableTags[6]; break;
case '06/14': res = availableTags[10]; break;
case '07/04': res = availableTags[12]; break;
case '10/31': res = availableTags[15]; break;
case '11/11': res = availableTags[16]; break;
case '12/07': res = availableTags[18]; break;
case '12/25': res = availableTags[19]; break;
}
$('#tags').val(res);
});
});
</script>
</head>
<body>
<input id="holidayDate">Date:</input>
<input id="tags">Description:</input>
</body>
</html>
如果我想做同样的验证,那么我该怎么办?
答案 0 :(得分:0)
我建议你把相应的日期放到另一个数组中,如下所示:
var tagDates = [ '01/01', null, '02/02', '02/14', ... ];
/* fill in the rest, with null where you don't have a date */
然后你可以根据你想要的内容迭代任何一个数组。您现有的switch
将成为:
/* convert date to tag */
for (var i = 0; i < tagDates.length; i++)
if (tagDates[i] == dateString) {
res = availableTags[i];
break;
}
你可以这样做:
/* convert tag to date */
for (var i = 0; i < availableTags.length; i++)
if (availableTags[i] == tagString) {
res = tagDates[i];
break;
}