最近遇到一個需求,保存一些數據,可是須要判斷全部輸入框是否爲空,若是爲空的話,彈窗提示數據爲空.不爲空再執行保存的的ajax方法ajax
function test(){ $('input[type="text"]').each(function() { if($.trim($(this).val()).length == 0){ return false; } }); .....$.ajax方法 }
問題來了,此處不管爲不爲空,都會調用方法體中的ajax方法,後來才知道函數
$("").each(function(){ return false; });
each
函數體中的return false
至關於break,因此直接跳過判斷爲空的方法體去執行ajax操做.this
解決方案:設置一個flag 標記code
var isFormValid = true; $('input[type="text"]').each(function() { if($.trim($(this).val()).length == 0){ isFormValid = false; } }); if(!isFormValid){ alert('不可爲空!'); return false; }
解決方案:設置try_catch()orm
try{ $('input[type="text"]').each(function() { if($.trim($(this).val()).length == 0){ throw name; } }); }catch(e){ alert(e+"test"); return false; }