Проверка Javascript - PullRequest
       5

Проверка Javascript

1 голос
/ 13 июля 2010

У меня есть два поля ввода 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>

Если я хочу выполнить ту же проверку наоборот, то что мне делать?

1 Ответ

0 голосов
/ 13 июля 2010

Я предлагаю вам поместить соответствующие даты в другой массив, например так:

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;
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...