我已经阅读了几篇关于这个问题的帖子(这里和其他网站),但没有人为我工作。我正在尝试在注册过程中检查给定的电子邮件是否已在数据库中注册。
我有一个名为 Register.aspx 的页面,我在其中声明了以下 JavaScript 函数:
function check_email_availability(src, args) {
$.ajax({
type: "POST",
async: false,
timeout: 500,
contentType: "application/json",
url: "Register.aspx/CheckEmailAvailability",
data: "{ 'email' : '" + args.Value + "' }",
success: function (result) {
args.IsValid = result.d;
}
});
}
另一方面,在 Register.aspx.vb 后面的代码中,我有以下内容WebMethod
:
<System.Web.Services.WebMethod()> _
Public Shared Functiion CheckEmailAvailability(ByVal email As String) As String
If Membership.GetUser(email) Is Nothing Then
Return "True"
Else
Return "False"
End Function
我正在尝试通过 a 启动 JavaScript 函数,CustomValidator
但我从 Chrome 的控制台收到以下消息:
Uncaught TypeError: Cannot read property 'Value' of undefined
错误出现在该行中
data: "{ 'email' : '" + args.Value + "' }",
所以-总是使用 Chrome-,我在该行设置了一个断点,并且从控制台,我写了
args.Value
我得到了正确的值,即我输入的电子邮件地址。所以...我有点迷路了。
我很感激任何帮助。