BootstrapValidator remote 驗證之後,無法繼續走下去的問題
阿新 • • 發佈:2019-02-14
$("#form").bootstrapValidator({ message : "請輸入完整的資訊", feedbackIcons : {/*input狀態樣式圖片*/ validating : "glyphicon glyphicon-refresh" }, fields: { id:{ validators: { notEmpty: { message: "不能為空" }, remote: { message: "重複", url: "${ctx}/...", delay:1000, //每輸入一個字元,就發ajax請求,伺服器壓力還是太大,設定1秒傳送一次ajax(預設輸入一個字元,提交一次,伺服器壓力太大) type:"post", cache: false } } } }, submitButtons : "input[type='submit']"/*bootstrap validator 會在form 尋找input標籤 型別是submit的,然後繫結事件*/ }); function doSave(){ $("#form").bootstrapValidator("validate");/* 提交驗證 */ if(!$("#form").data("bootstrapValidator").isValid()){ return; } /* 驗證失敗return */ $.ajax({ ...... }); }
如上段程式碼,點儲存後進行驗證,但是驗證之後並沒有繼續走下去,解決方法是在儲存之前用blur方法或者別的步驟先進行驗證。例:
switch ("${State}") {
case "M":
$("#form").data("bootstrapValidator").validateField("id");
break;
default:
break;
}
如果單個驗證無法解決問題,那就全部先驗證一遍吧:
$("#form").bootstrapValidator("validate");