使用jquery验证引擎传递多个文件以进行ajax验证

时间:2015-01-31 14:39:56

标签: jquery-validation-engine

我使用jquery验证引擎来验证表单输入。它工作正常。 我有一种情况,我要求用户提供国家和邮政编码,我需要验证国家和邮政编码的组合是否有效。

单独验证字段的代码工作正常,如下所示:

<p class="mediumlargefont add_margin_top">Please confirm your country:</p>
<input onclick="$('#postcode').validationEngine('showPrompt', 'Please select your country', 'load')"
    class="validate[required, custom[onlyLetterSp], maxSize[30], ajax[ajaxNameCallCountry]]" 
    type="text" name="country" id="autocomplete" value="[% IF country; country; END %]"/>
</div>
<div>
    <p class="mediumlargefont add_margin_top">Please enter your postcode:</p>
    <input maxlength="10" size="22"  
    onclick="$('#postcode').validationEngine('showPrompt', 'Please enter the postcode of your current location', 'load')"
    class="validate[condRequired[country], custom[onlyLetterNumberSpHy], maxSize[10], ajax[ajaxNameCallPostcode]]" 
    type="text" name="postcode" id="postcode" data-prompt-position="centerRight"/>
</ul>

我想知道的是,当我验证邮政编码时,是否有办法将ajax调用的国家/地区输入的当前值传递给后端?这将允许我验证组合。

BTW,用于验证引擎的JS看起来像这样:

$(document).ready( function(){
    $("#postcodeForm").validationEngine('attach', 'autoHidePrompt', {
        scroll: "false",
        ajaxFormValidation : "true"
    });
});

1 个答案:

答案 0 :(得分:0)

当然,10分钟后我找到了答案。希望它可以帮助别人。

在ajax选择器的定义中添加extraDataDynamic

例如,

"ajaxUserCall": {
    "url": "ajaxValidateFieldUser",
    "extraData": "name=eric",
    "extraDataDynamic": ['#user_id', '#user_email'],
    "alertText": "* This user is already taken",
    "alertTextOk": "All good!",
    "alertTextLoad": "* Validating, please wait"
},