使用javascript Asp.Net MVC克隆@ Html.DropdownList

时间:2016-08-16 15:36:04

标签: javascript c# jquery html asp.net

你好我有以下问题:我有一个包含一些列的表,其中一列是已经填充的@ Html.Dropdownlist。我正在尝试通过使用javascript单击按钮来克隆它。我能够克隆所有行,但在克隆@ Html.Dropdownlist选择后停止工作。我可以打开@ Html.Dropdownlist但我无法选择选项。谁能帮我? 提前谢谢。

这是我的代码:

@{
 DatabaseContext db = new DatabaseContext();
 var actions_list = new SelectList(db.Actions.Select(f => new { f.Id, f.Action }), "Id", "Action");
    }


        <table>
         <thead>
 <tbody id="lines-event">
          <tr>
           <th>#</th>
           <th>Action</th>
           <th>Data</th>
           <th><button type="button" class="btn glyphicon glyphicon-plus pull-right" id="add_row"></button></th>
          </tr>
        </thead>

        <tr id='line-new-event'>
         <td class="col-md-1"></td>
         <td class="action col-md-3">@Html.DropDownList("Actions", actions_list, htmlAttributes: new { @class = "form-control", data_width = "100%"})</td>
         <td class="data"><input type="text" class="form-control edit_data" /></td>
         <td class="col-sm-1"><button type='button' class='btn glyphicon glyphicon-trash pull-right delete_row'></button></td>
        </tr>
    </tbody>
    </table>


<script>
 $("#add_row").click(function () {
           function createGuid() {
                function s4() {
                    return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
                }
                return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();
            }

            var guid = createGuid();
            console.log(guid);
            var newLine = $('#line-new-event').clone().removeAttr('id');
            $(newLine).find('select').attr("id", guid);
            $(newLine).find('select').attr("name", guid);
            $(newLine).insertBefore($('#line-new-event'))
        });
</script>

1 个答案:

答案 0 :(得分:0)

您的代码看起来很好您确定不仅仅是javascript错误,请尝试查看所有功能或scritps。我会给你一个建议删除所有内容,只留下克隆的功能,如果它的工作开始添加其余的,看看它何时停止工作。我认为将会出现错误的脚本或类。 欢迎你