jqxTreeGrid如果单击该行中的特定单元格,则禁用选择/取消选择行

时间:2016-01-01 10:54:05

标签: javascript jquery jqgrid jqwidget jqxtreegrid

我正在研究jqxTreeGrid。我有四个字段的行。名称,组织,电话和选择首选项(这是一个下拉列表)。现在,当我点击特定的行/单元格时,它会选择该行并将行数据保存到本地数组。

我的问题是第4栏。如果我点击该列(下拉列表),我不希望因为以下原因而触发rowSelect事件:

  1. 取消选择我之前选择的所有行,我不希望这样做。
  2. 它选择一行,但我的目的是设置该行的下拉列表值。
  3. 我希望不会发生任何事情,因为我只选择偏好下拉列表中的值。

    我去过这篇帖子:JQGrid Not select row when clicking in a particular cell但由于jqxTreeGrid没有这个方法,所以没有帮助。

    我尝试了以下方法,但它不适合我。

    $('#ad_sendAlert_jqxGrid').on('rowClick',function(event){
    
                            // event args.
                            var args = event.args;
                            // row data.
                            var row = args.row;
                            // row key.
                            var key = args.key;
                            // data field
                            var dataField = args.dataField;
    
                            if(dataField === 'alertpreference'){
                                event.preventDefault();
                                //event.stopPropagation();
                                return false;
                            }
                    });
    

    这是我的rowSelect方法:

    $('#ad_sendAlert_jqxGrid').on('rowSelect',function(event){
           // event args.
            var args = event.args;
            // row data.
            var row = args.row;
            // row key.
            var key = args.key;
    
            if(row.level !== 0){                            
                var selectedUser = self.tempUserList[row.id];                            
                self.addUserToList(selectedUser);
            }                    
            self.renderUserCount();
    
    
    });
    

1 个答案:

答案 0 :(得分:0)

看起来jqxTreeGrid有selectionMode选项。将其值设置为" custom"将禁用其在单击时选择行的默认行为。只有API才能选择行。

$('#treeGrid').jqxTreeGrid({selectionMode: "custom" });