插入用javascript动态创建的文本框中的值

本文关键字:文本 创建 javascript 动态 插入 | 更新日期: 2023-09-27 18:29:39

我在jquery中有以下脚本:

$(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#从这个动态texboxes中获取值。在php中,我做了一个foreach,但在c#中它不起作用。你能给我指个方向吗。我在一个asp.net应用程序中使用c。我已经更新了jquery的答案,但仍然不知道如何从文本框中获取值。

插入用javascript动态创建的文本框中的值

我认为您必须使用Json(例如,使用JQuery)。

请在字段名称中不使用[]。如果我错了,请纠正我,但显然[]是php发明的,没有必要。

例如,我最喜欢的框架(django)不支持名称为foo[]的字段,也就是说它支持多个名称为"foo"的字段。这是标准的,c应该也是这样。

请注意,为了测试它,您应该检查c#中的完整post变量。

在提交页面之前,只需读取动态文本框的值,并通过javascript将它们(由任何特殊字符分隔)放入asp隐藏字段中,然后提交。现在从服务器端读取hiddenfield的值,split;您得到的值

对于动态创建的字段,必须使用JSON。

将页面数据序列化为JSON。

现在使用jQuery发布数据。

在代码隐藏中,您可以将JSON反序列化为字符串。请访问此页面