我知道这可以通过在JQuery或Javascript中编写函数来完成,但似乎只需添加正确的字符串就可以非常简洁地应该。给出了HtmlHelper的HtmlAttributes,给出了MVC4的光滑程度。
我可能遗漏了一些非常简单的东西,所以如果我问明显的话,请原谅我。
采取这种情况:
您有一个有用的MVC4应用程序,您想要修改如下
您希望在Controller中调用ActionResult来修改页面内容,以响应用户更改了复选框的值。
该复选框位于表单中,但您不想提交表单,因为这会导致其他验证发生,最好在用户准备提交之前保留
< / LI>您希望将模型传递给ActionResult,就像提交
页面更改无法在客户端完成,因为将构建新模型
我已经尝试将$ .Post放入复选框的HtmlAttributes中,它将控制权引导到ActionResult就好了,但我无法解决如何在不编码函数的情况下传递模型。考虑到MVC的其他一切都是为了以非常直观的方式传递模型,我觉得必须有一种干净利落的方式......是吗?
非常感谢
答案 0 :(得分:1)
只需serialize()
表单并发送数据; MVC模型绑定器应该完成剩下的工作:
$.post('@Url.Action("Bar", "Foo")',
$('#myForm').serialize(),
function(data) { /*do something with the response*/ });