DS *_*mar 20 ajax asp.net-mvc jquery model-binding
我有如下控制器:
public ActionResult Save(string input, string name) {
//Some code
return PartialView();
}
Run Code Online (Sandbox Code Playgroud)
我需要对此控制器方法进行ajax调用并传递两个参数input和value
我的ajax调用如下所示:
$.ajax({
url: '/Home/Save',
type: 'POST',
async: false,
dataType: 'text',
processData: false,
data: "input=" + JSON.stringify(data) + "&name =" + $("#name").val(),
success: function (data) {
}
});
Run Code Online (Sandbox Code Playgroud)
我无法将值传递给name参数.. name参数中的值变为null ..请帮助我..提前感谢
xdu*_*ine 24
您正在进行HTTP POST,但尝试使用GET查询字符串语法传递参数.在POST中,数据作为命名参数传递,不使用param=value&foo=bar语法.使用jQuery的ajax方法可以创建一个带有命名参数的javascript对象,如下所示:
$.ajax({
url: '/Home/SaveChart',
type: 'POST',
async: false,
dataType: 'text',
processData: false,
data: {
input: JSON.stringify(IVRInstant.data),
name: $("#wrkname").val()
},
success: function (data) { }
});
Run Code Online (Sandbox Code Playgroud)
除了 @xdumain 的帖子之外,我更喜欢在 ajax 调用之前创建数据对象,以便您可以调试它。
var dataObject = JSON.stringify({
'input': $('#myInput').val(),
'name': $('#myName').val(),
});
Run Code Online (Sandbox Code Playgroud)
现在在ajax调用中使用它
$.ajax({
url: "/Home/SaveChart",
type: 'POST',
async: false,
dataType: 'json',
contentType: 'application/json',
data: dataObject,
success: function (data) { },
error: function (xhr) { } )};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98068 次 |
| 最近记录: |