我有一个网站,用户可以在提交列表之前配置项目列表。每个项目由一行级联组合框表示(每个选择都会更新以下组合框中的可能值)。
用户可以根据需要添加任意数量的项目,对其进行配置,然后提交。
要执行添加操作,我有一个这样的 javascript 函数:
function newAction() {
// Get value of index so we can form our ids
var index = $("#ItemTable").find("#Item").length;
//copy the table row
var newItemRow = $("#Item:last-of-type").clone(true);
// Update all of the ids
var rowTextBefore = newItemRow.html();
var rowText = rowTextBefore.replace("[" + index - 1 + "]", "[" + index + "]");
newItemRow.html(rowText);
// Append the row to the end of the table
$("#ItemTable").append(newItemRow);
}
这一切都很好。
但是为了启用级联组合框,每行都会生成一堆 jQuery 内容。它看起来像这样:
jQuery(document).ready(function(){
jQuery('#Items[0]_Name').tComboBox({highlightFirst:false,
cascadeTo:'Items[0]_Accessories', data:[{...data here...]});
jQuery('#Items[0]_Accessories').tComboBox({highlightFirst:false,
// etc.
}
如何克隆这些东西以及文档元素,以便我动态添加的行也实现级联组合框?