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

Submit form using dynamicallly added fields with the same name in ASP.NET

我有一个使用 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 并且似乎在如何让它发挥作用方面遇到了一些重大问题。如果有人可以提供帮助,那就太好了。

解决方案可以是:

第一组控件:

<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
   }