jquery-bootgridを使用しています。 http://www.jquery-bootgrid.com/GettingStartedBootgridで選択した行を新しいデータで更新する方法
私は編集したいフィールドの1つを使ってブートグリッドを作成しましたので、私が行ったのはフォーマッタで指定することでした。
機能です。
function formatterForFieldval(column, row)
{
return '<input type="text" class="form-control" id="usr" '
+ 'value="'+row.fieldval+'"'
+ '>' ;
}
これは動作し、実行時に編集できるテキストボックスを作成します。
次に、変更されたデータを保存します。
次のスクリプトを使用して、ユーザーが変更した選択行を取得します。
function getSelectedRowsAsJson(tableId)
{
var selectedRowsArray =[];
var selectedRowsJsonArray = "";
var rows = $(tableId).bootgrid("getSelectedRows");
var arrayLength = rows.length;
for (var i = 0; i < arrayLength; i++)
{
var rowsc = $(tableId).bootgrid("getCurrentRows");
var arrayLengthCurrent = rowsc.length;
for (var ii = 0; ii < arrayLengthCurrent; ii++)
{
if(rows[i]===rowsc[ii].id)
{
selectedRowsArray.push(rowsc[ii])
}
}
}
selectedRowsJsonArray = JSON.stringify(selectedRowsArray);
console.log(selectedRowsJsonArray);
return selectedRowsJsonArray;
}
私の問題は、私は、テキストボックスを変更する前に、それはまだ古いデータ(ロードされたデータ)を示している。.. var rowsc = $(tableId).bootgrid("getCurrentRows");
が、私はテキストボックスに入力された修正されたデータに更新されていないということです。
したがって、データベースに行の配列を送信するとき、同じ値に更新されます。
テキストボックスを変更した後にvar rowsc = $(tableId).bootgrid("getCurrentRows");
を更新するにはどうすればよいですか?それとも間違っているのですか?
ありがとうございます。私はそれを試し、あなたにお知らせします。 – Renier
ありがとうございます! – Renier
あなたは大歓迎です! – zinczinc