我已閱讀關於此問題的幾篇文章(這裏和其他網站),但沒有人爲我工作。我試圖在註冊過程中檢查給定的電子郵件是否已經在數據庫中註冊過。在Register.aspx.vb使用VB.NET檢查電子郵件的可用性WebMethod + JSON + CustomValidator
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頁面中,我已經聲明瞭遵循JavaScript函數後續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
我試圖通過CustomValidator
啓動JavaScript函數,但我從Chrome的控制檯收到以下消息:
Uncaught TypeError: Cannot read property 'Value' of undefined
正好出現在該行的錯誤
data: "{ 'email' : '" + args.Value + "' }",
所以-always使用鍍鉻,我已經設置在該行斷點,並從控制檯,我已經寫
args.Value
並且我已經獲得了正確的值,即我輸入的電子郵件地址。所以......我有點失落。
我很感激任何幫助。
而不是在控制檯(可能有多個上下文)進行評估,請嘗試突出顯示該表達式並在其上放置一個監視。 –
明天早上我告訴你結果。謝謝! – adripanico