2010-05-28 132 views
0

我用一些动态生成的文本框创建一个页面。所有文本框的ID都是在运行时生成的。我想将所有文本框的值发送到我的控制器并保存该数据。我如何获得所有文本框的价值。我可能会使用JavaScript或JQuery。 任何人都可以建议我吗?Asp.net MVC动态生成的文本框

在此先感谢..

阿希什

+0

您是否在表单中添加了文本框并希望执行标准POST请求,还是需要通过GET请求发送它们? – tpeczek 2010-05-28 08:28:36

回答

0

在asp.net的MVC你被允许直接在视图生成的HTML代码。例如:

<% for(int i = 0; i < 10; i++) { %> 
    <input type='text' name='text-<%=i%>' id='text-<%=i%>' value="My box <%=i%>" /> 
<% } %> 

这也可以由JQuery生成。如果你有服务器端的数据,最好使用这种方式。如果他们需要计算客户端,那么使用JQuery。

您还可以使用HTML助手:

<%=Html.TextBox("name", "default value")%> 

您可以将参数添加到过,如果你需要设置例如ID。

然后,您将通过向参数添加一个FormCollection并从中读取,从而在您的控制器中检索此内容。

[HttpPost] 
public ActionResult Example(int id, FormCollection post) { 
    // Here FormCollection["text-0"] is equal to "My box 0" 
} 
0

或者,也许你只是想迭代所有的值从

Request.Form.Item 
在你的控制器动作

...只需使用一个简单的for-each循环都要经过每个提交的值。