如何动态更改输入类型的名称

时间:2014-12-19 05:30:42

标签: jquery html

我在表单/表格中点击按钮时添加一行。

所以我只是复制最后一行的内容并将其添加到新行。由于它是一个表单,我将不得不更改输入类型的名称,以便我可以使用它来保存在数据库中。

我的代码看起来像这样

   <table>
    <tr>
        <td></td>
        <td>
            <select>
                <option>One</option>
                <option>Two</option>
            </select>
            <button class="makeStrng">+</button>
        </td>
        <td>
            <input type="text" />
        </td>
    </tr>
    <tr>
        <td>
            <button class="addRow">Add ME</button>
        </td>
    </tr>
</table>

脚本

$(document).ready(function () {
    $(document).on("click", ".addRow,.makeStrng", function () {
        var $class = $(this).attr("class");
        if ($class == "addRow") {
            var $row = $(this).closest("tr"); // Finds the closest row <tr>
            var prev = $row.prev();
            $(prev).after("<tr>" + prev.html() + "</tr>");
        }

});

js的小提琴是

JSFIDDLE

提前致谢

1 个答案:

答案 0 :(得分:0)

您应该将它们作为数组输入的类型。它应该是

<select name="opt[]">
<input type="text" name="inp[]" />

通过这种方式复制行时,您无需执行任何操作。在控制器中,您可以在每个阵列中执行for并获取数据。