使用ASP.NET中具有相同名称的动态添加字段提交表单

时间:2015-03-04 14:38:53

标签: html asp.net vb.net forms visual-studio-2010

我有一个使用VB作为语言的ASP.net网页,我创建了一个表单,它要求3个不同的输入字段,如下所示,但是用户可以选择再次添加这三个字段以用于多个表单输入让他们的生活更轻松,这项任务更快。

<label>Test Number:&nbsp;<input type="text" id="test_number.1" name="test_number.1" value=""/>
</label>
<label>
    Score:&nbsp;<input type="text" name="score.1" id="score.1" placeholder="Required" value="" />
</label>
<label>Comments:<input type="text" name="comments.1" id="comments.1" value="," placeholder="Comments Necessary for future reference" size="70" />

通过firebug查看数据提交,如果您只提交一组字段,则会将其发布到服务器中。

test_number.1=12555&score.1=75&comments=testing

通过firebug查看数据提交,如果您提交多组字段,则会将其发布到服务器中。

test_number.1=12555&score.1=75&comments=testing&test_number.1=12555&score.1=75&comments=testing&test_number.1=12555&score.1=75&comments=testing

现在我需要将这些值插入到数据库中,我知道如何通过PHP利用[]然后在后端处理它来做到这一点。但我仍然在学习asp.net,并且似乎在如何使其工作方面遇到了一些重大问题。如果有人能提供帮助,那就太棒了。

1 个答案:

答案 0 :(得分:0)

解决方案可以是:

第一组控件:

<input type="text" name="testnumber" />
<input type="text" name="testscore" />
<input type="text" name="testcomments" /> 

添加下一组

 <input type="text" name="testnumber" />
<input type="text" name="testscore" />
<input type="text" name="testcomments" /> 

等等。

在服务器端:

var testnumbers = Request["testnumbers"];// comma seperated values
var testscores = Request["testnumbers"];// comma seperated values
var testcomments = Request["testcomments"]; // comma seperted values.

用逗号分隔所有值。您将获得每个

的值数组
 string[] testnoList = testnumbers.split(',');
    string[] testscoresList = testscores .split(',');
    string[] testcommentsList = testcomments .split(',');

   for(int i=0; i<testnoList.Lenght; i++)
   {
       var testno = testnoList[i];
       var score = testscoresList[i];
       var comments = testcommentsList[i];
       // do whatever you want here
   }