可能就这么简单。但是,我很难搞清楚它。
我有一个控制器,它有不同的动作来调用DB代码并返回结果。我想将文本框的值传递给控制器中的不同操作。
怎么做?我知道,我可以通过使用表单传递值。但是,我不知道如何从单一视图中调用控制器中的不同动作。
答案 0 :(得分:0)
我不确定您使用的是哪种语言或框架,但是在ASP.NET MVC输入控件ID中映射到操作参数,所以如果您有一个文本框:
<input type="text" name="firstName" id="firstName/>
然后,当该表单发布到您的操作时,框架通过将其与action参数匹配来从POST数据传递文本框的值:
public ActionResult UpdateUser(string firstName)
{
User user = UserManager.UpdateUser(this.CurrentUserId, firstName);
return View(user);
}
答案 1 :(得分:0)
遇到同样的问题并对其进行排序。 Html.TextBox中字符串参数的名称必须与它将要使用的控制器方法中的参数匹配,否则控制器中的参数最终为null。例如:
在视图中 -
<%= Html.TextBox("value") %> // argument is named "value"
控制器方法 -
[HttpPost]
public ActionResult ControllerName(string value) // parameter named the same as argument
{ //code here }
答案 2 :(得分:0)
我正在浏览并发现了这个问题。如果这些选项不起作用,也许你可以试试
Requst["value"]
控制器中的