更改jqGrid中特定行的下拉列表的值
我已经使用jqGrid创建了一个表。我有一个组合框。我希望combobox的值不在前一行中使用 但是,一旦显示了第一行,则无法更改第二行中comboc的值 在我的组合框中,有三个值<代码>一个,更改jqGrid中特定行的下拉列表的值,jqgrid,Jqgrid,我已经使用jqGrid创建了一个表。我有一个组合框。我希望combobox的值不在前一行中使用 但是,一旦显示了第一行,则无法更改第二行中comboc的值 在我的组合框中,有三个值一个,两个,三个。我在第一行选择了值“2”。第二个组合框必须有两个值:one和three 我尝试了以下代码: $("#listData").setColProp('denomination', {editoptions:{value:getDenominationList('addOperation').toS
两个
,三个
。我在第一行选择了值“2”。第二个组合框必须有两个值:one
和three
我尝试了以下代码:
$("#listData").setColProp('denomination',
{editoptions:{value:getDenominationList('addOperation').toString()}});
在这里:
getDeminationList('addOperation')
将返回字符串“1:1;3:3”
但这不起作用。我希望我理解并更正您的问题,并且您希望每次根据当前行id或其他网格内容更改
编辑选项的值。您可以在自定义的dataInit
事件处理程序中执行此操作(请参阅):
问题中使用的函数getDeminationList
没有您可能需要的rowid
参数。为了简化它,我在行上方的代码中包含了它,它显示了如何获得行的id
我建议你看看我最近回答的问题。它显示了在出现异常的情况下如何重置value
属性的初始值。您应该在事件处理程序内部执行此操作。此外,在您必须使用的情况下,将强制调用dataInit
事件处理程序,而不是一次,而是在每一行编辑。对不起,我目前正在出差,我正忙于其他项目。所以我没有时间准备新的例子。
dataInit: function (elem) {
var v = $(elem).val();
var rowId = $(e.target).closest('tr.jqgrow').attr('id');
var newValue = getDenominationList('addOperation').toString();
$("#listData").setColProp('denomination', { editoptions: { value:newValue} });
}