回答:参数面板的 查询按钮增加 点击后事件 var td = _g().parameterEl.getWidgetByName('TD'); var tds = td.getValue(); //获取多选控件值 var p = ; //_obj是表格tr对象 var _obj = $(".x-table tr"); //_length是tr行数 for(var i = 0; i < _obj.length; i++) { //遍历tr中的对象td var _td = _obj.eq(i).find("td"); for(var j = 0; j < _td.length; j++) { //_val是每个单元格值 var _val = _td.eq(j).text(); //去除空格 var _tval = $.trim(_val); p.push(_tval); } }; for(var k=0;k<p.length;k++){ for(var l=0;l<tds.length;l++){ if(p==tds){ tds.splice(l,1); l=l-1; } } }; //获取E列最后一行的单元格编号 var id = $("td:last").attr("id"); var row = parseInt($("td:last").attr("row")); var co = parseInt($("td:last").attr("col")); var cytdjc = _g().getCellValue(0,4,row) //alert(cytdjc); if(cytdjc.length==0){ //获取E列最后一行的单元格行号 //在末尾插入行 setTimeout(function() { _g().appendReportRC(tds.length-1, id); //},250) setTimeout((function() { for (var m = 0; m < tds.length; m++) { //根据产品ID,获取其他字段值 var mrcysx = FR.remoteEvaluate("value('默认',5,4,'"+ tds+"')"); var cysx = FR.remoteEvaluate("value('默认',6,4,'"+ tds+"')"); _g().setCellValue(0, 4, row + m , tds); _g().setCellValue(0, 5, row + m , mrcysx); _g().setCellValue(0, 6, row + m , cysx); //给对应单元格赋值 } } ), 100); },100); } else { setTimeout(function() { _g().appendReportRC(tds.length, id); //},250) setTimeout((function() { for (var m = 0; m < tds.length; m++) { //根据产品ID,获取其他字段值 var mrcysx = FR.remoteEvaluate("value('默认',5,4,'"+ tds+"')"); var cysx = FR.remoteEvaluate("value('默认',6,4,'"+ tds+"')"); _g().setCellValue(0, 4, row + m +1, tds); _g().setCellValue(0, 5, row + m +1, mrcysx); _g().setCellValue(0, 6, row + m +1, cysx); //给对应单元格赋值 } } ), 100); },100); } //由于插入行是异步请求,所以需要利用闭包来确保执行顺序 td.reset(); //清空下拉框