2

私はjqgridとidに応じてセルの値を返すgetCellメソッドを持っています。グリッドの最初の行でのみ機能し、他の場合は identifyImg = false:

var ids = jQuery("#myGrid").getDataIDs(); 
        for(var i=0;i<ids.length;i++){
            var identifyImg = $('#myGrid').jqGrid('getCell', i, 'idState');
alert(identifyImg); // return false after first row
            if(identifyImg == '1'){
                 //DO SOMETHING 
              }
            }

列は次のように定義されます。

{name:'idState',index:'idState', width:55}

そして、数字が正しく入力されています。どうすればこれを解決できますか?

4

1 に答える 1

2

あなたが使用する必要があります

 $('#myGrid').jqGrid('getCell', ids[i], 'idState');

それ以外の

 $('#myGrid').jqGrid('getCell', i, 'idState');

さらに、ほとんどの場合、 から返された ID に対してループを使用する必要がないことにも言及したいと思いますgetDataIDsloadCompletejqGrid の内部または古いバージョンで jqGridgridCompleteをカスタマイズするのは良いアプローチでした。現在、(パフォーマンスの観点から) より優れた代替手段があります。たとえば、1 つの列の内容に基づいて 1 つのセルのスタイルやその他の属性を変更する必要がある場合は、使用できます(回答回答回答回答などを参照してください)。1 つの列の内容に基づいて行全体のいくつかの属性を変更する必要がある場合は、使用できます(回答を参照してください)。cellattrrowattr)。別のセルのコンテンツに基づいてセルのコンテンツ (属性ではない) を変更する必要がある場合は、カスタム formatterを使用できます。

于 2012-11-10T11:30:34.257 に答える