微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – ASP.NET MVC 3 Razor:将数据从视图传递到控制器

我对所有的东西都是全新的.NET.我有一个非常基本的网页与 HTML表单.我希望’onsubmit’将窗体数据从视图发送到控制器.我已经看到类似的帖子,但没有一个涉及到新的Razor语法的答案.使用’onsubmit’如何处理,如何从控制器访问数据?谢谢!!

解决方法

您可以在 Html.Beginform中包装要传递的视图控件.

例如:

@using (Html.BeginForm("ActionMethodName","ControllerName"))
{
 ... your input,labels,textBoxes and other html controls go here

 <input class="button" id="submit" type="submit" value="Submit" />

}

当按下Submit按钮时,Beginform中的所有内容将被提交到“ControllerName”控制器的“ActionMethodName”方法.

在控制器端,您可以从以下视图访问所有接收到的数据:

public ActionResult ActionMethodName(FormCollection collection)
{
 string userName = collection.Get("username-input");

}

上面的收集对象将包含我们从表单中提交的所有输入条目.您可以按名称访问它们,就像访问任何数组一样:
收集[“嗒嗒”]
或收藏.Get(“blah”)

您也可以直接将参数传递给控制器​​,而不用FormCollection发送整个页面

@using (Html.BeginForm("ActionMethodName","ControllerName",new {id = param1,name = param2}))
{
 ... your input,textBoxes and other html controls go here

 <input class="button" id="submit" type="submit" value="Submit" />

}

public ActionResult ActionMethodName(string id,string name)
{
 string myId = id;
 string myName = name;

}

或者您可以组合这两种方法,并与Formcollection一起传递特定参数.随你便.

希望它有帮助.

编辑:当我写的其他用户也提到一些有用的链接.看一看.

原文地址:https://www.jb51.cc/csharp/93251.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐