2015-07-10 84 views
0

這是我正在使用的代碼片段。在這裏根據我的預期,代碼執行不會停止並且表單被提交。雖然警告框出現,但在按下「確定」之後,表單被提交。提醒框不停止執行/提交表格

$('.qto').each(function(index) {   
    if (jQuery.inArray($("#quota-" + (index + 1)).val(), quoatas) != -1) { 
     alert("Please check the different values you have entered"); 
     return false; 
    } 
    quoatas.push($("#quota-" + (index + 1)).val()); 
}); 
+1

你在哪裏提交表格? –

回答

0

的問題是因爲你的return false是有關它包含在,而不是submit處理形式(這我假設這個代碼包含內)的匿名函數。作爲一種解決方法,您可以使用傳遞給提交處理程序的eventpreventDefault()方法。試試這個:

$('#myForm').submit(function(e) { 
    $('.qto').each(function(index) {   
     if ($.inArray($("#quota-" + (index + 1)).val(), quoatas) != -1) { 
      e.preventDefault(); // stop the form submission 
      alert("Please check the different values you have entered"); 
     } 
     quoatas.push($("#quota-" + (index + 1)).val()); 
    }); 
}); 
0
you can use preventDefault() to stop form submission 
+0

請添加代碼並說明preventDefault()如何停止表單提交 – Ram

0

您可以簡單地使用這勢必會像這樣的形式事件處理程序,