我有2列(以及其他列) - 带编辑类型的L1Cat和L2Cat:"选择"。在选择L1Cat时,L2Cat是从L2Cat的预取主列表(l2OfL1)动态填充的。下面是2个列的colModel代码:
{ name: 'L1Cat', width: 160, editable: true,align : "right",sortable : false, formatter: 'select',
edittype: 'select', editoptions: {
value: l1,
dataInit: function (elem) {
var v = $(elem).val();
var sc = l2OfL1[v];
var newOptions = '';
for(var l2Index in sc) {
if (sc.hasOwnProperty(l2Index)) {
var ob = sc[l2Index];
for(var ab in ob){
newOptions = newOptions + ab + ":" + ob[ab] + ";";
}
}
}
newOptions = newOptions.substring(0,newOptions.length - 1);
grid.setColProp('L2Cat', { editoptions: { value: newOptions} });
},
dataEvents: [
{
type: 'change',
fn: function(e) {
var v = parseInt($(e.target).val(), 10);
var sc = l2OfL1[v];
var newOptions = '';
for(var l2Index in sc) {
if (sc.hasOwnProperty(l2Index)) {
var ob = sc[l2Index];
for(var ab in ob){
newOptions += '<option role="option" value="' +
ab + '">' +
ob[ab] + '</option>';
}
}
}
// inline editing
var row = $(e.target).closest('tr.jqgrow');
var rowId = row.attr('id');
$("select#" + rowId + "_L2Cat", row[0]).html(newOptions);
}
}
]
}
}
, {
name : "L2Cat",
width : 200,
align : "right",
sortable : false,
edittype : "select",
editable : true
}
如果我使用格式化程序&#34;选择&#34;在L1Cat中,第一次加载主网格数据时,不显示L1Cat的所有行中的值。当我单击内联编辑按钮时,两个下拉列表都会填充,在保存行时,l1Cat值可见。如果我删除格式化程序:&#34;选择&#34;在L1Cat中,L1cat值是可见的,但是在单击内联编辑按钮时,下拉列表为空。
请告诉我如何显示L1Cat值以及填充内联编辑的下拉列表。