【发布时间】:2017-06-26 10:10:43
【问题描述】:
我使用的 jquery-bootgrid 位于这里。 http://www.jquery-bootgrid.com/GettingStarted
我创建了一个引导网格,其中包含我想要编辑的字段之一,所以我所做的就是在格式化程序中指定它。
formatters:
{
"fieldval": function(column, row)
{
return formatterForFieldval(column, row);
}
}
})
函数。
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");?还是我做错了?
【问题讨论】:
标签: javascript jquery jquery-bootgrid