你直接處理的前和後回調:表單域的jQuery validationEngine Ajax驗證需要回調
jQuery("#testForm").validationEngine('attach',
{
promptPosition : "bottomLeft",
validationEventTrigger : "submit",
ajaxFormValidation: true,
onBeforeAjaxFormValidation: function() {
alert('before');
},
onAjaxFormComplete : function(status, form, errors, options) {
alert('after');
}
});
這很酷,所有,但我只是要驗證一個單獨的字段(在此情況下,文本輸入「輸入[名稱=‘名稱’]」):
<script>
$("#testBtn").click(function() {
var resp = $("#testForm").validationEngine("validate");
});
</script>
<form onsubmit="return false;"
onclick="$('#testForm').validationEngine('hide')"
name="testForm"
id="testForm"
action="" method="POST">
<input type="hidden" name="providerId" value="0" />
<input name="name" value="Default Provider" class="validate[required, ajax[checkProviderNameExists]]" />
<button id="testBtn">Submit</button>
</form>
當提交按鈕是點擊,jQuery ValidationEngine會將checkProviderNameExists請求提交給服務器,並根據結果顯示正確/不正確的提示。但是,如果驗證通過,我希望能夠在此時提交表單。這可能嗎? 基本上我需要一個字段驗證的回調函數,所以我可以根據表單是否被驗證採取適當的行動。
爲了完整起見,這裏是我的自定義AJAX驗證的實行:
"checkProviderNameExists" : {
"url": "/settings/checkprovidernameexists",
"extraDataDynamic": "providerId",
"alertText": "* This provider name already exists",
"alertTextLoad": "Checking name..."
}
找到了以下URL:http://www.position-absolute.com/articles/using-form-ajax-validation-with-the-jquery-validation-engine-plugin/,它似乎表明我想要是不可能的。 「內聯驗證不會在提交時被調用,內聯ajax驗證是爲了直接與用戶交互,您必須驗證提交的信息」 – IcedDante