我不知道我在这里错过了什么。我正在尝试填充Jquery对象并将该对象发送到具有模型作为参数并使其正确绑定的控制器。我知道Ajax调用有效,因为我在控制器中遇到了断点。这是我的Jquery,用于创建我将通过ajax发送的对象 var testObj = {}; testObj.empNum = '1234';这是我的Ajax Call:var url = BASE_URL + "Assessment/testing";$.post({ url: url, data: { test: testObj }, success: function (data) { console.log(data) }, dataType: 'JSON'});这是我的模型:public class test{ public string empNum { get; set; }}和我的控制器:[HttpPost]public JsonResult testing(test t){ return Json(t, JsonRequestBehavior.AllowGet);}我期望控制器中的 t 包含 empNum = 1234 的测试模型,但它一直显示为 null。
2 回答

千巷猫影
TA贡献1829条经验 获得超7个赞
尝试使用它将 js 对象转换为 c# 模型
$.post({
url: url,
contentType: "application/json; charset=utf-8",
data: JSON.stringify(testObj),
或对于多个参数:
$.post({
url: url,
contentType: "application/json; charset=utf-8",
data: JSON.stringify( {test: testObj} ),

牧羊人nacy
TA贡献1862条经验 获得超7个赞
很抱歉浪费大家的时间,但问题是:
控制器中的此行的参数为 t:
public JsonResult testing(test t)
在我的Ajax调用中,参数名称必须与控制器上的参数名称匹配。所以在这种情况下;测试应更改为 t 以匹配控制器
data: { test: testObj },
- 2 回答
- 0 关注
- 131 浏览
添加回答
举报
0/150
提交
取消