AJAX 中的成功或错误回调不起作用
Success or error call back in AJAX not working
$(document).ready(function () {
$("#loginForm").submit(function (e)
{
var Data = $(this).serializeArray();
var formURL = $(this).attr("action");
var PostData =
{
"CompanyName": $(this).serializeArray().CompanyName,
"Username": $(this).serializeArray().Username,
"Password": $(this).serializeArray().Password
}
$.ajax(
{
url: formURL,
data: PostData,
success: function (data, textStatus, jqXHR) {
alert("Data" + data);
alert("Jq" + jqXHR);
alert("textStatus" + textStatus);
},
error: function (jqXHR, textStatus, errorThrown) {
alert("Failed..ajax error response type " + textStatus);
}
});
e.preventDefault(); //STOP default action
})
});
$("#loginForm").submit(); //SUBMIT FORM
这是我对C#代码的简单Ajax请求。我确信 C# 给出了正确的值(根据情况(。
C# 根据情况返回true
或false
。但无论如何,这个 Ajax 脚本都没有给我一个我编码的警报窗口。
相反,我从以下位置得到此响应
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<boolean xmlns="http://schemas.microsoft.com/2003/10/Serialization/">false</boolean>
当false
并且只有标记中的值在其 true 时更改。谁能告诉我为什么success
或error
都不起作用。
使工作变得更好的是:
$("#loginForm").submit(function (event) {
event.preventDefault();
$.post($(this).attr("action"), $(this).serialize())
.done(function (results) {
alert(results);
})
.fail(function (error) {
alert(error);
})
.always(function () {
alert("AJAX Complete");
});
});
从它的名字可以看出,.serializeArray()
方法返回一个数组 - 而不是一个对象。数组的形式为:
[
{
name: "a",
value: "1"
},
{
name: "b",
value: "2"
},
{
name: "c",
value: "3"
}
]
- 对象数组
- 参考: http://api.jquery.com/serializearray/
- 需求:http://api.jquery.com/serialize/
因此,要访问第三个value
您需要提供索引 2 -- ..[2].value
... name
...[2].name
.您的代码存在会阻止进行 ajax 调用的错误。错误是否可能来自其他地方?
因此更改:
var PostData =
{
"CompanyName": $(this).serializeArray().CompanyName,
"Username": $(this).serializeArray().Username,
"Password": $(this).serializeArray().Password
}
自:
var PostDate = $(this).serialize();
相关文章:
- 测试Angular Service解决错误回调中的promise
- $http服务未触发成功或错误回调
- jQuery AJAX错误回调未运行
- JavaScriptajax请求servlet调用错误回调函数
- 为什么 AJAX 完成和错误回调都触发了
- Cordova Android短信插件不会触发成功或错误回调
- 无法识别错误回调
- 在第一次错误回调时退出承诺链
- 如何获取 Ember 组件对象内部承诺成功或错误回调
- 在 Node.js 中传播错误回调,并避免所有额外的麻烦
- 在 HTTP 错误回调中访问“this”
- 在 AngularJS 中声明一个承诺,并带有命名的成功/错误回调
- 谷歌浏览器中的地理位置错误回调
- PhoneGap 3.0.0 Tanelih 蓝牙插件在 Android 上已启用错误回调不起作用
- $http错误回调不能与 httpProvider responseInterceptor 结合使用
- JayData 上的默认错误回调
- 错误回调中的错误:TestPlugin2 = 引用错误:找不到变量:在 file:///android_asset/ww
- 主干.js:保存方法始终返回错误回调
- AJAX 中的成功或错误回调不起作用
- Backbone.js:奇怪的.save()错误回调