本人 初學MVC + EF 通過異步表單的方式寫了個增加操作 在Controller 中寫了個添加的行為 代碼如下
public ActionResult AddYsxz(ysxz ysxzinfo)
{
ysxzinfo.czy = "超級用戶";
ysxzinfo.czrqsj = DateTime.Now;
ysxzinfo.sfbp = 0;
ysxzinfo.sffks = 0;
ysxzbll.Add(ysxzinfo);
return Content("ok");
}
前端代碼如下:
<script type="javascript">
function afterAdd(msg) {
// if (msg == "ok") {
// $('#editAdd input').val('');
// $('#editAdd').css("display", "none");
// $('#test').datagrid("clearSelections");
// $('#test').datagrid("reload");
// $('#editAdd').dialog('close');
// }
$.messager.alert(msg);
}
<./script>
<%using (Ajax.BeginForm("AddYsxz", "Ysxz", new AjaxOptions() { HttpMethod = "post", OnSuccess = "afterAdd" }, new { id="AddForm"}))
{%>
<table>
<tr>
<td>次序:</td><td><input type="text" name="cx" /></td>
</tr>
<tr>
<td>用戶性質代碼:</td><td><input type="text" name="ysxzdm" /></td>
</tr>
<tr>
<td>用戶性質名稱:</td><td><input type="text" name="ysxzmc"/></td>
</tr>
</table>
<% } %>
但是在前端的 異步成功提交表單后 ,到Controller 執行添加的AddYsxz 方法 返回一個添加成功的相應消息 "ok"
但在 異步表單中定義的 OnSuccess = "afterAdd" 的方法中 接收不到 返回的信息“ok” 而是一個undefined類型
求大神們指導 小弟用的第VS2010 中的 asp.net MVC2
8 个解决方案
呵呵,mvc做成這個樣子,也真不容易,也不知道這個老師是怎么混出來的。。。。
雖然很想幫你,但真不知道怎么才能幫到你,因為我mvc開發八九年了,根本就沒見過這樣異步提交的
這個提交為何要做異步呢。就算純AJAX 做異步的話 也是有業務限制的。