将参数传递给包含模型的动作

时间:2014-07-21 19:27:04

标签: asp.net-mvc asp.net-mvc-4

我是MVC的新手,我试图传递参数和用户输入的模型。

我想将它们传递给按钮点击时的操作。

这是我的行动代码。

[HttpPost]        
public ActionResult SaveData(string param, MyObjectModel model)
{ ... }

在我的观点上:

function PassParam()
{ ... }

和我的按钮:

<input type="submit" value="Generate" onclick="PassParam();" />

将字符串和模型传递给动作的最佳方法是什么?

2 个答案:

答案 0 :(得分:4)

使用jQuery并发送一个带有实际JSON对象的POST:

request = $.ajax({
    url: "/Controller/Action",
    type: "POST",
    data: { param: "someValue", model: { YourModelProp1:  "text", YourModelProp2:  12345 }}
});

答案 1 :(得分:0)

我找到了一种简单的方法,只需向MyObjectModel添加另一个属性,然后将param传递给new属性,这样当页面提交时,模型将通过new属性传递给控制器​​。