Написал простенькую форму из двух чекбоксов и кноки. Ява скрипт проверяет не выбраны ли оба чек бокса сразу, если "не выбраны" то переходит на другую страницу. Вопрос вот в чем:
1. Почему в указанном месте (указал в коде) не происходит переходит на другую страницу, т.е после return true (если проверка прошла успешно).
2. Как узнать или оба чек бокса unchecked. В Java-Script есть только checked, а мне нужно именно "uncheked".
<form onsubmit="return checkForm(this);">
<input type="hidden" />
<input type="checkbox" name="a" value="music" id="myCheckbox1"/> Research 1<br/>
<input type="checkbox" name="b" value="TV" id="myCheckbox2"/> Research 2<br/>
<br/>
<input type="submit" value="Next" />
</form>
<script>
function checkForm(form) {
var type; // Атрибут type для input-ов
// Массив списка ошибок, по дефолту пустой
var errorList = [];
// Хэш с текстом ошибок (ключ - ID ошибки)
var errorText = {
1 : "Check only one kind of research!",
2 : "Check at seems one kind of research!",
}
if ((document.getElementById('myCheckbox1').checked)&&(document.getElementById('myCheckbox2').checked)){ errorList.push(1)}
// Если массив ошибок пуст - возвращаем true
if (!errorList.length){
return true;
window.location.href = "http://www.ghhtrhhrhrhcbh.ru";
//ВОТ ЭТО ПЕРЕАДРЕСАЦИЯ, НО ОНА ПОЧЕМУ-ТО НЕ РАБОТАЕТ
}
// Если есть ошибки - формируем сообщение, выовдим alert
// и возвращаем false
var errorMsg = "You make mistake:\n\n";
for (i = 0; i < 1; i++) {
errorMsg += errorText[errorList[i]] + "\n";
}
alert(errorMsg);
return false;
}
</script>