0

我正在尝试使用 jquery validateEngine 插件验证多部分表单。我可以为所有字段正确验证表单,但是我想更进一步并使用内置的 ajax 验证。我想检查名称与数据库相比是否唯一。此功能正常工作,我得到了预期的结果,但是我无法提交表单,并且通过在表单上的 firebug 控制台中运行验证,即使所有字段都正确,它也会验证为 false。

如果我删除 ajax 验证,表单会正确验证,所以在这个脚本的某个地方设置了一个错误标志,但我只是不知道在哪里查看或覆盖它

验证通过以下方式初始化:

if ($.validationEngine) {
        form.validationEngine();
    }

正如我所说的正常验证工作。

我以我的形式将课程设置为:

class="input validate[required, ajax[ajaxNameCallPhp]]"

验证引擎中与此方法相关的脚本已更改为:

"ajaxNameCallPhp": {
// remote json service location
"url": "http://localhost/greenFees/includes/lib/greenFee/checkName.php",
// error
"alertText": "* This name is already taken",
    "alertTextOk": "* This name is available",
"alertTextLoad": "* Validating, please wait"
                },

对此问题的任何帮助表示赞赏

4

1 回答 1

0

好的 - 在萤火虫中记录脚本几个小时后设法让它工作......

反正。罪魁祸首部分与另一个脚本有关 - 表单向导将表单转换为向导,它添加了一个下一步按钮,单击该按钮即可运行验证。由于某种原因,从那里调用验证时的行为与表单提交不同。使用 ajax 验证时,如果名称正常、是否已被使用或验证时显示通知,它会显示一个标志。解决方案 1:删除向导脚本,但表单无法正常运行 解决方案 2:删除通知 alertTextLoad - 验证似乎将此标志的存在视为错误而不是信息 - 删除它意味着我可以保留向导 Ta

于 2013-02-25T20:01:55.527 回答