0

我想开发一个网页,动态添加和删除页面上的特定网络表单(所有具有相同结构的网络表单)(按下添加和删除按钮时)。添加和删​​除 web 表单已经在下面的代码中工作(使用 jquery 函数),但在提交更多表单时,我仍然难以创建相关的唯一名称值。我的想法是: - 将所有表单放在一个数组中(forms() ) - 每个表单都有唯一的名称值 - ...并在一个数组(formsavailable())中维护哪些表单已被添加/使用,哪些表单已被删除。

我已经添加了代码(如下)以在添加表单时维护 formsavailable() 。但我不知道如何编写 formsavailable() 来删除表单。

有任何想法吗?或者有没有更简单的方法来创建具有描述的上下文的唯一名称值?

请提出您的意见。

谢谢你。

编码:

<script>
    var forms = Array();
    var formsavailable = Array();

    forms = getProductconfigforms(); //create a list of strings with the product forms

    var NUMBER_OF_FORMS = 5;

    for (var i=1; i<=NUMBER_OF_FORMS;i++)
    {
            formsavailable[i] = true; //at the start all forms are
    }


        //script for adding and removing productss
        $(document).ready (function () {
            var i;
            $('.btnAdd').click (function () {
                i = formsavailable.indexOf(true);       
                $('.buttons').append(forms[i]); // end append
                formsavailable[i] = false;

                $('div .btnRemove').last().click (function () { 
                    $(this).parent().last().remove();    
                }); // end click
            }); // end click                

        }); // end ready
    </script>




</head>

<body>
<h2> text here </h2>
<div class="buttons">
<input type="button" class="btnAdd" value="Add"><br>         
</div>
<p> tekst </p>

<input type="button" value="Terug naar stap 1" onclick="goBack()">

</body>

4

1 回答 1

1

您实际上不需要创建唯一索引或唯一名称。HTTP 协议支持发送多个同名数据点。

例如,这完全没问题:&name=me&name=you&name=them&name=her。在后端,根据您使用的框架和语言,您只需获得一个数组。

所以在你的表格中,你可以使用

<label> Product 1 <input name="product_name" type="text" /></label>
<label> Product 2 <input name="product_name" type="text" /></label>
...

依此类推,直到您添加了任意数量的表单。当您提交表单时,您的页面会自动将它们发送到您的后端表单,您可以在其中以编程方式解析每个表单。

于 2013-07-02T16:01:15.093 回答