C# 从使用javascript动态创建的文本框中插入值
我在jquery中有以下脚本:C# 从使用javascript动态创建的文本框中插入值,c#,javascript,asp.net,C#,Javascript,Asp.net,我在jquery中有以下脚本: $(document).ready(function () { var counter = 2; $("#addButton").click(function () { if (counter > 10) { alert("Only 10 textboxes allow"); return false; }
$(document).ready(function () {
var counter = 2;
$("#addButton").click(function () {
if (counter > 10) {
alert("Only 10 textboxes allow");
return false;
}
var newTextBoxDiv = $(document.createElement('div'))
.attr("id", 'TextBoxDiv' + counter);
newTextBoxDiv.html('<label>Raspuns' + counter + ' : </label>' +
'<input type="text" name="textbox' + counter +
'" id="textbox' + counter + '" value="" >' );
newTextBoxDiv.appendTo("#TextBoxesGroup");
counter++;
});
$("#removeButton").click(function () {
if (counter == 1) {
alert("No more textbox to remove");
return false;
}
counter--;
$("#TextBoxDiv" + counter).remove();
});
});
这会在按下按钮时生成动态文本框。我的问题是:如何使用c从这个动态texbox中获取值。在php中,我制作了一个foreach,但在c中它不起作用。你能告诉我一个方向吗。我在asp.net应用程序中使用c。我已经更新了对jquery的回答,但仍然没有弄清楚如何从文本框中获取值。我想你必须使用Json,例如,使用jquery。尝试在字段名中不使用[]。如果我错了,请纠正我,但显然[]是php发明的东西,这是不必要的 例如,我最喜欢的框架django不支持名为foo[]的字段,也就是说它支持名为foo的多个字段。这是标准的,在c上应该是这样
请注意,为了测试它,您应该在提交页面之前检查c.中的完整post变量,只需读取动态文本框的值,并通过javascript将它们以任何特殊字符分隔放入asp隐藏字段,然后提交。现在从服务器端split读取hiddenfield的值;对于动态创建的字段,您必须使用JSON 将页面数据序列化为JSON 现在使用jQuery发布数据
在代码隐藏中,您可以将JSON反序列化回字符串。请访问您是否尝试在ASP.NET页面上设置断点并检查发布数据的内容?单从数据结构的角度看,您必须做的事情应该非常清楚。甚至不需要阅读文档,尽管这也是一个好主意。任何通过javascript添加到页面中的html控件修改都不会被服务器端识别。不必从服务器端读取控件,只需通过asp hiddenfield传递值即可