私はjqxTreeGridに取り組んでいます。私は4つのフィールドを持つ行を持っています。名前、組織、電話番号、および設定の選択 (これはドロップダウンです)。特定の行/セルをクリックすると、その行が選択され、行データがローカル配列に保存されます。
ここでの問題は4列目です。その列 (ドロップダウン) をクリックした場合、次の理由により、rowSelect イベントを発生させたくありません。
- 以前に選択したすべての行の選択を解除しますが、これは当然のことです。
- 行を選択しますが、私の意図はその行のドロップダウンの値を設定することです。
設定ドロップダウンから値を選択しているだけなので、何も起こらないようにしてください。
私はこの投稿に行きました:JQGrid特定のセルをクリックしたときに行を選択しませんが、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();
});