你好我有以下问题:我有一个包含一些列的表,其中一列是已经填充的@ 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>
答案 0 :(得分:0)
您的代码看起来很好您确定不仅仅是javascript错误,请尝试查看所有功能或scritps。我会给你一个建议删除所有内容,只留下克隆的功能,如果它的工作开始添加其余的,看看它何时停止工作。我认为将会出现错误的脚本或类。 欢迎你