easy ui 实现增加一行,里面的comcobox 等无效解决思路

easy ui 实现增加一行,里面的comcobox 等无效
本帖最后由 yiiy22 于 2015-09-21 14:43:07 编辑
 easy ui 实现增加一行,里面的comcobox 等无效解决思路,这是一个table , 里面你的每一行是几个可以选择的下拉框, data 是从数据库加载的, 现在我想 用一个增加按钮,点击可以自动增加一行,但是
var currObj = $('#multiply_task_search_table'); currObj.find('tr:last').clone().appendTo(currObj);
这样子的话,新增加的那些 combobox都没有效果了,我试着对新增加的这些重新进行comcobox 的数据加载等初始化,但是不会对clone的 产生效果, 而是在这些comcobox 后面再增加一个comcobox 。。。。。。。。easy ui 实现增加一行,里面的comcobox 等无效解决思路

{
text : '增加一行',
iconCls : 'icon-add',
handler : function() {
var currObj = $(
'#multiply_task_search_condition')
.find('table');
// console.info(currObj);
alert(currObj.find('tr:last').index());
currObj.find('tr:last').clone()
.appendTo(currObj);
var selectSearchColumn = currObj
.find('tr:last')
.find("select[name='searchColumnNames']");

var selectConditions=currObj
.find('tr:last')
.find("input[name='searchConditions']");

var selectValues=currObj
.find('tr:last')
.find("input[name='searchVals']");
alert(currObj.find('tr:last').index());



$(selectConditions).combobox({
editable : false,
data : select_condition_data_staff,
width : 60,
valueField : 'id',
textField : 'title',
value : '='
});
$(selectValues).combobox({
data : staffData,
width:170,
valueField : 'email',
textField : 'name',
filter: function (q, row) {
            var re = new RegExp(q, 'i'); 
            return re.test(row.name);
        }
});
$(selectSearchColumn).combobox({
width : 120
});
}
}



这个问题怎么解决, 我哪里写错了么, 求各位大大给个解决的方法,或者实现这个功能的一些想法建议等
easy ui 实现增加一行,里面的comcobox 等无效解决思路
------解决思路----------------------
你clone没用啊,这个只生成了cb的ui显示对象,下拉对象并没有clone出来,不在同一个容器里面的(包括这行的tr)

你调用datagrid的appenRow后,然后直接beginEdit这行就好了,干嘛要clone
------解决思路----------------------
每一行单独做成一个panel,
初始化这个table的时候添加一个panel,
以后每按一次“增加按钮”,就再添加一个panel。
table的layout可以是form,vbox或absolute等, margin按自己审美设一下。