0

jqueryの知識が豊富なためだと思いますが、詳細を説明していません。

行がインライン編集されるローカルデータグリッドがあります。データはjsonオブジェクトによってサーバーから受信されます。オプションが来るいくつかの依存する列もjsonでサーバーから到着します。グリッドの下に3つのボタン(追加、送信、削除)があります。[送信]ボタンを押すと、グリッドがjsonオブジェクトに変換され、サーバーに送信されてアプリケーションが更新されます。編集した行を保存するには、ユーザーはEnterキーを押す必要がありますが、ユーザーはこの小さなキーを忘れがちで、入力されたデータは各列のhtmlです。

私の質問は、[追加]ボタンと[送信]ボタンがクリックされたときに、入力クリックをシミュレートして行を保存し、行の編集フォーカスを失う方法です。

4

1 に答える 1

0

問題が解決しました:

最も効率的ではありませんが、すべての行を保存することで、キーストロークの送信を複雑にすることなく、常に編集された行が保存されることを保証します。簡単な方法が直接的な方法である場合もあります。

var rowIds = $('#list').jqGrid('getDataIDs');
for(idIndex = 0; idIndex < rowIds.length; ++idIndex){
     jQuery("#list").jqGrid('saveRow',rowIds[idIndex]); 
}

getDataIDsによって、すべての行IDを取得し、それらを繰り返して保存します。私はそれが他の人に役立つことを願っています2:)

于 2012-02-16T09:53:24.747 に答える