У вас есть бесконечный цикл отправки, а затем запрещения отправки вашей формы, когда значение текстового поля cat_id
не равно 0. Удалите блок else
, поскольку он не служит никакой реальной цели.
Более подробно:
function teamValidation(){
var cat_id = $('#cat_id').val();
if(cat_id == "0"){
alert("Category is invalid...");
return false;
}else{
$('#addForm').submit(); // this submits the form again - does NOT proceed with this submission of the form
return false; // returning false will prevent the submission from being completed
}
}
<form action="<?php echo SITE_URL; ?>adminteams/saveDetail/"
name="addForm" id="addForm" onsubmit="return teamValidation();">
<input type="hidden" name="cat_id" id="cat_id" value="1"/>
</form>
Когда вы отправляете форму, вызывается teamValidation()
.Если проверка прошла успешно (выполняется код блока else
), вы снова отправляете форму , что вызывает повторный вызов teamValidation()
, затем return false
, что не позволяет завершить текущую отправку.Firefox, вероятно, дает сбой, потому что он находится в цикле, где постоянно отправляет форму, которую никогда не разрешают завершать;тот факт, что браузер довольно ужасен с точки зрения использования памяти, вероятно, тоже не помогает.