我正在使用ajax ajaxNameCall
函数来检查数据库中是否存在用户名,然后提醒用户是否使用了该用户名。我有它的工作,但由于更新我需要额外检查。如果管理员想要更新用户记录,则针对用户名的检查运行会看到该用户已存在并生成该消息。我想传递一个额外的userID参数,以便我可以避免这种情况。有没有办法在ajax验证器中使用extraData
字段为其提供userID?
从users.php调用Ajax
userName: {
title: 'User Name',
list: false,
width: '15%',
list: true,
edit: false,
inputClass: 'validate[required,custom[onlyLetterNumber],maxSize[20],ajax[ajaxNameCall]]'
},
ValidationEngine:
"ajaxNameCall": {
// remote json service location
"url": "scripts/validationEngine/ajaxValidateFieldName.php",
// error
"alertText": "* This name is already taken",
// if you provide an "alertTextOk", it will show as a green prompt when the field validates
"alertTextOk": "* This name is available",
// speaks by itself
"alertTextLoad": "* Validating, please wait"
},
我是否可以使用带有extraData字段的ajaxUserCallPhp函数从我的表单中传入userID:
"ajaxUserCallPhp": {
"url": "phpajax/ajaxValidateFieldUser.php",
// you may want to pass extra data on the ajax call
"extraData": "name=eric",
// if you provide an "alertTextOk", it will show as a green prompt when the field validates
"alertTextOk": "* This username is available",
"alertText": "* This user is already taken",
"alertTextLoad": "* Validating, please wait"
},
如果是这样..我如何传递参数?从玩它开始,我只能在extraData字段中硬编码userID(这是无用的)。无法弄明白=(
答案 0 :(得分:1)
在上面的文件提取中转到jQuery-Validation-Engine / demos / demoAjaxInlinePHP.html。
在本地计算机上运行。
我添加了隐藏的输入字段,该字段通过文本字段的ajax验证传递。
希望这能解决您的问题:)
我修改了以下文件以完成工作: -
<强> jquery.validationEngine-en.js 强>
在ajaxUserCallPhp
我添加了"extraDataDynamic": ["#xyz"],
属性。
通过我附上的示例,您将了解实施。
答案 1 :(得分:0)
使用jquery验证引擎check this out
将额外参数传递给ajax