我正在使用jqgrid版本4.4.4,并且我有一个现有的已填充jqgrid表,我想在用户在外部下拉菜单中选择特定值时禁用行。
image
在现有jqgrid中禁用行选择
例如,作为图像显示,如果用户选择相应的值1我想具有不同ID的所有行(0和2)包含在表变成不可选择。以相同的方式选择0值时,第1行和第2行将被取消选中,依此类推。
我想这样做,而不使用gridUnload方法。
现在我已经找到了禁用输入按钮的方法,但是用户无论如何都可以推动行并选择值。
任何想法?
预先感谢您
我正在使用jqgrid版本4.4.4,并且我有一个现有的已填充jqgrid表,我想在用户在外部下拉菜单中选择特定值时禁用行。
image
在现有jqgrid中禁用行选择
例如,作为图像显示,如果用户选择相应的值1我想具有不同ID的所有行(0和2)包含在表变成不可选择。以相同的方式选择0值时,第1行和第2行将被取消选中,依此类推。
我想这样做,而不使用gridUnload方法。
现在我已经找到了禁用输入按钮的方法,但是用户无论如何都可以推动行并选择值。
任何想法?
预先感谢您
的jqGrid允许您定义beforeSelectRow
回调,这将被称为新行会被选中之前。回调获取当前选中行的rowid
作为参数。回调可以首先在外部下拉菜单中获取所选项目的值,然后根据选定的值返回true
或false
,并根据选择的行返回rowid
。通过这种方式你可以实现你的需求。
此外,您可以使用getGridParam
方法使用参数"selarrrow"
获取具有所有当前选定行的rowid列表的数组。用户更改外部下拉列表中的选择后,可以更改jqGrid上的当前选择。您可以使用setSelection
方法切换特定行的选择。
您可以额外实现onSelectAll
回调,如果用户单击多选列的列标题来选择或取消选择所有行,将会调用该回调。您可以切换某些行的选择来保存您要遵循的规则。
我建议你考虑使用jgGrid的height: "auto"
选项来改善网格的外观。此外,我建议您从复古版本4.4.4升级到free jqGrid 4.13.4。您可以直接使用从CDN(请参阅the wiki)或从NuGet,npm,bower或从Maven Central下载。 4.4.4版本已经死了,并没有更多的支持。
你必须更准确地描述你的问题。你目前写的是“改变一些属性”。你在“属性”下的含义是什么?你的意思是jqGrid的选项?一些选项可以动态更改,另一个不可更改。因此,您应该明确指出您需要实施的内容。另一个例子:你写关于“下拉菜单”。你的意思是一些*外部菜单* jqGrid之外,或者你的意思是从过滤器工具栏或编辑字段(在使用内联编辑,单元格编辑或表单编辑的情况下)或jqGrid的搜索对话框的字段下拉? – Oleg
包含您使用的JavaScript代码或某些图片将会很有帮助。 – Oleg
感谢您的回答。我重写了帖子... – Cyr