我想在页面加载时显示列名称为空的网格,当用户单击搜索按钮时,它将以数据表的形式从数据库表中获取数据,并且需要绑定到jqGrid中。 / p>
我一直在研究this和this解决方案,但它们同时有2个调用,一个正在用数据调用列,而另一个仅在调用数据。
我想要将页面加载时的列绑定到按钮单击时的数据绑定的解决方案。
$(document).ready(function () {
//Load Empty jqgrid dynamically using datatable row column...
$(gridData).jqGrid({
url: "../Generic/GetRowColumns",
colNames: colNames, // this would bind dynamically
colModel: colModel // this would bind dynamically
});
$("#btnSubmit").click(function () {
var data = $("#dataForm").serialize();
//Bind jqGrid by datatable on ajax call
$(gridData).jqGrid({
url: "../Generic/GetRowColumns",
data: data,
colNames: colNames, // this would bind dynamically
colModel: colModel // this would bind dynamically
});
});
});
因此,在第一次调用时,应将空网格与数据表返回的列绑定在一起,而在同一网格中的另一个调用(单击按钮),网格将与数据绑定。
需要一些帮助。预先感谢。
答案 0 :(得分:0)
据我所知,首先需要进行ajax调用以获取colNames和colModel数组,使用本地数据类型构造网格,然后单击按钮以获取所需的数据,并使用setGridParam和重新加载以生效:
$(document).ready(function () {
ajax({
url : "../Generic/GetRowColumns",
success : function(data,....) {
var colNames = response_from_ajax
var colModel = response_from_ajax
//Load Empty jqgrid dynamically using datatable row column...
$(gridData).jqGrid({
colNames: colNames, // this would bind dynamically
colModel: colModel, // this would bind dynamically
datatype : "local"
});
}
});
$("#btnSubmit").click(function () {
var data = $("#dataForm").serialize();
//Bind jqGrid by datatable on ajax call
$(gridData).jqGrid('setGridParam', { data : data}).trigger('reloadGrid');
});
});