【发布时间】:2011-08-05 18:37:23
【问题描述】:
我确信这可能是我没有做的简单事情。运行 livevalidation.js jquery 插件 (livevalidation.com)。它提供自定义函数回调。我正在尝试检查用户名的可用性。服务器端工作正常,我在数据变量中得到了正确的响应......
这是我的 JS:
Validate.Username = function(value, paramsObj) {
var paramsObj = paramsObj || {};
var message = paramsObj.failureMessage || "Username is not available";
var isSuccess = true;
$.post("<?php echo fURL::getDomain(); ?>/ajax/username",
function(data) {
if (data.status === 'notavailable')
{
Validation.fail('oops, not available.');
}
});
};
我是这样称呼它的:
var username = new LiveValidation('username', { validMessage: curr_username + "is available!" });
username.add( Validate.Presence, { failureMessage: "Choose a username" });
username.add( Validate.Username, { failureMessage: "Username is not available." } );
我遇到的问题是:
Uncaught ReferenceError: Validation is not defined
如果我将Validation.fail() 放在我的.post() 函数之外,它就可以正常工作。所以我很确定这是因为它无法在 .post() 函数中被引用。
我尝试过使用回调函数
if (data.status === 'notavailable')
{
status_not_available();
}
我得到同样的错误。
我意识到这可能非常简单,但我们将不胜感激。提前谢谢你。
【问题讨论】:
标签: php jquery validation livevalidation