【问题标题】:Highlight jqgrid row by cell value按单元格值突出显示 jqgrid 行
【发布时间】:2012-07-27 23:33:06
【问题描述】:

我有一个 jqGrid 显示来自服务器的一些数据(php 查询,json 结果)。

是否可以在知道存储在列单元格中的值的情况下获取特定行的 rowid 并使用 setSelection 突出显示该行?

我试着用一个例子来更好地解释: 我的应用程序的用户使用表单从下拉菜单中选择一个值。 然后,如果此值在网格中,则包含它的行将突出显示(如果可能,网格会自行移动以在网格窗口的可见部分显示突出显示的行)

一些注意事项: 网格分页器已配置,但所有行都在第一页中......所以分页不会成为问题

高亮/选择一次只作用于一行,没有多选(目前)

提前致谢

【问题讨论】:

    标签: jqgrid selection highlight


    【解决方案1】:

    我认为这个 JavaScript 函数会为你完成这项工作:

    function check(){
        var data=$('#dropDown option:selected').val();
    
        var allRowsOnCurrentPage = $('#grid').jqGrid('getDataIDs');
        //suppose the column you want tho check in dropdown and in grid is "Name"
    
        for( var i=0;i<allRowsOnCurrentPage.length;i++){
           var Name=getCellValue(allRowsOnCurrentPage[i],'Name');
           if(Name===data){
                jQuery("#grid").setSelection(allRowsOnCurrentPage[i], true);
           }
        }
    }
    

    【讨论】:

    • 你的意思是allRowsOnCurrentPage.length
    • 哦是的..我从我的工作代码中选择了这个代码......让我编辑这个
    【解决方案2】:

    谢谢! 我不得不对你的函数进行一些编辑以使其工作......这里的工作代码:

    function check() {
    
       var data=$('#dropDown option:selected').val();
       var allRowsOnCurrentPage = $('#grid').jqGrid('getDataIDs');
       for( var i=0;i<allRowsOnCurrentPage.length;i++){
           var Name = $('#grid').getCell(allRowsOnCurrentPage[i], 'Name');
           if(Name===data){
               jQuery("#cetacei_grid").setSelection(allRowsOnCurrentPage[i], true);
           }
    }
    

    【讨论】:

      猜你喜欢
      • 2014-10-05
      • 1970-01-01
      • 2020-09-25
      • 2023-04-10
      • 2015-09-13
      • 2020-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多