0

次のコードを使用して、グリッドにチェックボックスを配置しています。

     colNames: [..., 'Select'],
     ...
     ...

     { name: 'act', index: 'act', width: 30, sortable: false }
     ....

     <input type="button" id="bUpload" value="Upload Report" />

ユーザーが [アップロード] ボタンをクリックし、ユーザーがこの列で複数のチェックボックスを選択している場合、メッセージを表示したいと思います。これを行う方法がわかりません。

私は次のことを試しましたが、

     $("#bUpload").click(function() {

       var selectedRow;

       if ($("input:checked").length > 1)
       {
          alert('Error -  Please select only one row.');
          return false;
       }


       if ($("input:checked").length > 0) 
       {              
          $("input:checked").each(function() 
          {
             selectedRow = this.value ;
          });
        }    

....

これは機能しますが、私がこれを好まない理由は、他の列にも他のチェックボックスがあり、「act」列から選択したかどうかについて混乱が生じる可能性があるためです。列が「行為」の場合、選択された数を確認するにはどうすればよいですか。

4

1 に答える 1

0

グリッドの各行を繰り返し処理し、各行をテストできます。

//iterate over each row 
var rowIds = $('#gridName').jqGrid('getDataIDs');

for (i = 1; i <= rowIds.length; i++) {
    rowData = $('#gridName').jqGrid('getRowData', i);

    if(rowData['act'] //etc..checkbox check) {

    }//if
}//for
于 2013-02-07T00:42:31.390 に答える