1. 程式人生 > >BootstrapValidator remote 驗證之後,無法繼續走下去的問題

BootstrapValidator remote 驗證之後,無法繼續走下去的問題

$("#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");