根据用户选择动态添加输入字段

时间:2016-07-18 10:24:45

标签: jquery asp.net-mvc

我在ASP.NET模型中有一个FieldItems字典,这个字典的值如下所示。

年龄 - 复选框, 姓名 - 文字, 公司 - 文字

在我的视图文件中,我正在根据字典中提供的键值对创建控件。

<div class="@Model.CssClass sf-fieldWrp">
<table>
    <tr>
        <td>
            <table>
                @foreach (var item in Model.FieldItems)
                {
                    <tr>
                        @if (item.Value == "checkbox")
                        {
                            <td>@item.Key</td>
                            <td> <input id="associationCheckbox" type="@item.Value" name="@item.Key" placeholder="@item.Key" value="false"/></td> 
                        }
                        else
                        { 
                            <td>@item.Key</td>
                            <td> <input type="@item.Value" name="@item.Key" value="@Model.Value" placeholder="@item.Key" /> </td>
                        }
                    </tr>
                }
            </table>
        </td>

        <td>
            <span>
                <button type="button" class="btn btn-success" style="float:none;cursor:pointer" ng-click="RemoveWidget()">AddPerson</button>
            </span>
        </td>
    </tr>

</table>
<span>
    <button type="button" class="btn btn-danger" style="float:none;cursor:pointer" ng-click="AddWidget()">Remove</button>
</span>

</div>

现在我对我的要求是根据按钮点击包含/删除所选字段。粗糙的设计如下所示。能否请您为此实施提供一些建议?

请按此顺序查看图像。 1.初始2. AfterAdd 3. AfterRemove

初始

enter image description here

AfterAdd

enter image description here

AfterRemove

enter image description here

图片链接:

谢谢, 巴鲁

1 个答案:

答案 0 :(得分:1)

使用jQuery的.clone().remove()函数非常简单。

我创建了一个在这里演示的plunker: http://plnkr.co/edit/Kf0Vxn?p=preview

现在它只是克隆了最后一个,包括值。

希望有所帮助。