使用 ASP.NET 中具有相同名称的动态添加字段提交表单
Submit form using dynamicallly added fields with the same name in ASP.NET
我有一个使用 VB 作为语言的 ASP.net 网页,我创建了一个表单,它要求如下 3 个不同的输入字段,但用户可以选择添加这些三个字段再次用于多个表单输入,使他们的生活更轻松,这项任务更快。
<label>Test Number: <input type="text" id="test_number.1" name="test_number.1" value=""/>
</label>
<label>
Score: <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
}
我有一个使用 VB 作为语言的 ASP.net 网页,我创建了一个表单,它要求如下 3 个不同的输入字段,但用户可以选择添加这些三个字段再次用于多个表单输入,使他们的生活更轻松,这项任务更快。
<label>Test Number: <input type="text" id="test_number.1" name="test_number.1" value=""/>
</label>
<label>
Score: <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
}