我正在尝试将对象myclass传递给视图页面,我面临的问题是将null对象返回给控制器。有什么指针吗?
以下是我的ascx页面中的代码
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<myclass>" %>
<div class="upModel" style="display:none">
<%= Model%>
</div>
<script type="text/javascript">
$(document).ready(function () {
$("#load").click(function () {
try {
$.ajax({
type: "POST",
url: "Loadmyaction",
data: $("#upModel").serialize(),
contentType: "application/json; charset=utf-8",
success: function(data) {
alert(data);
},
error: function(result) { alert("Error" + result); }
});
}
catch (err) {
alert(err.description);
}
});
</script>
**On controller, this is my method**
public string Loadmyaction(string obj)
{
string str = "";
return str;
}
这里obj从视图中变为null。为什么没有数据传回控制器?
答案 0 :(得分:0)
你确定它实际上是在击中你的方法吗?
你的jquery应该是这样的:
$.ajax({
type: "POST",
url: "<%=Url.Action("Loadmyaction") %>",
data: $("#upModel").serialize(),
dataType: "json",
success: function(data) {
alert(data);
},
error: function(result) {
alert("Error" + result);
}
});
尝试将参数类型更改为myClass
,无论它是什么。
[HttpPost]
public JsonResult LoadMyAction(MyClass model)
{
return Json("someString");
}