为什么我从警报中获得零(xhr.status); ?
我设定了突破点。在我的控制器上。首先,它显示0,然后继续我的控制器。在那里显示用户名null。
$(document).ready(function () {
$('#btn').click(function () {
$.ajax({
//url: 'Home/MyAction',
//data: { username: 'Jack' },
//cache: false,
//type: 'POST',
//error: function (xhr, ajaxOptions, error) {
//alert(xhr.status);
//alert('Error: ' + xhr.responseText);
//},
//successs: function (data) { alert('successs'); }
var url = '@Url.Action("Save", "Home")';
$.post(url, {
username: 'jack'
}, function (data) {
if (data)
alert("ok");
else
alert("error");
});
});
});
//return false;
});
我的控制器如下:
[HttpPost]
public ActionResult MyAction(string username)
{
try
{
var data = new
{
sent = true
};
return Json(data);
}
catch (Exception e)
{
var data = new
{
sent = false,
errorMessage = e.Message
};
return Json(data);
}
}
它可能取决于我的控制器?
答案 0 :(得分:0)
更改successs: function (data) { alert('successs'); }
到
success: function (data) { alert('success'); }
success
编辑的代码是
$(document).ready(function () {
$('#btn').click(function () {
$.ajax({
url: 'Home/MyAction',
data: { username: 'Jack' },
cache: false,
type: 'POST',
error: function (xhr, ajaxOptions, error) {
alert(xhr.status);
alert('Error: ' + xhr.responseText);
},
success: function (data) { alert('success'); }
});
});
return false;
});