我对 AJAX 很陌生,并且正在尝试从 ASP.Net 代码隐藏函数获取电子邮件地址
当使用下面的代码时,我收到了根据本期标题的错误。
这是我正在使用的代码
$('.txtRequester').focusout(function () {
console.log("textBox has lost focus");
function ShowCurrentTime() {
$.ajax({
type: "POST",
url: "Default.aspx/FindEmailAddress",
data: '{id: "' + $("txtRequester").val + '" }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function (response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert(response.d);
}
});
这是对本网站代码的改编。
改变线路时
success: OnSuccess
到 success:alert(response)
或 success:alert(data)
我收到了错误,但是如果我使用success:alert("ok")
,我会收到一条消息说“ok”,所以我怀疑我正在进入下面的函数。
<System.Web.Services.WebMethod()> _
Public Shared Function FindEmailAddress(ByVal id As String) As String
Dim response As String = GetEmail(id)
Return response
End Function
如果有人帮助我并让我知道我在这方面哪里出了问题,我将非常感激。
谢谢
最佳答案
我认为您可以使用下面的代码检查失败状态,因为我认为您使用了错误的语法。
$('.txtRequester').focusout(function () {
console.log("textBox has lost focus");
function ShowCurrentTime() {
$.ajax({
type: "POST",
url: "Default.aspx/FindEmailAddress",
data: JSON.stringify({id: ' + $(".txtRequester").val() + ' }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data, status, header){
console.log(data);
},
error: function (response) {
alert(response.d);
}
});
}
});
如果你没有成功,那么你肯定会得到错误响应。
关于javascript - Ajax 响应未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33776566/