|
|
|
Supreme Being
      
участник
Last Login: 15.12.2008 12:46
Сообщ.: 275,
Visits: 866
|
|
Здравствуйте!
Помогите разобраться в коде, который я сам и написал :)
Уже 6 часов пытаюсь найти ошибку!
function CheckData(s1,s2,s3,po1,po2,po3)
{
if ((s2=="2" & s1>29) || (s2=="4" & s1>30) || (s2=="6" & s1>30) || (s2=="9" & s1>30) || (s2=="11" & s1>30))
{alert("Не правильная начальная дата!"); }
else if ((po2=="2" & po1>29) || (po2=="4" & po1>30) || (po2=="6" & po1>30) || (po2=="9" & po1>30) || (po2=="11" & po1>30))
{alert("Не правильная конечная дата!"); }
else if (((s2>po2) & (s3>po3)) || ((s2>po2) & (s3==po3)))
{alert("начальная дата не может быть меньше конечной"); }
}
Первый if работает, а дальше else if пропускает с ошибками. Скобки проверял-ничего не нашел. В чем может быть проблема не представляю :(
|
|
|
|
|
Supreme Being
      
участник
Last Login: 15.12.2008 12:46
Сообщ.: 275,
Visits: 866
|
|
Извините, второе условие работает!
Не работает третье условие!
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Синтаксически эта функция правильная. В MSIE6 никаких ошибок не выдается. Единственное, что операция "логическое И" в JavaScript обозначается двойным амперсандом (&&), а не одним.
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
|
|
|
|
Supreme Being
      
участник
Last Login: 15.12.2008 12:46
Сообщ.: 275,
Visits: 866
|
|
Спасибо! Пример интересный, но у меня немножко другие задачи, проверка - это даже не входит в мою задачу, просто я не мог не сделать проверку и надолго с ней отвлекся :)
В этом примере уже готовые даты, а у меня две даты, причем каждое значение (день, месяц, год) в отдельном селекте сидит. Ну я думаю с этим примером разберусь для моего случая.
|
|
|
|