我不知道为什么我的 jqGrid 子网格不显示数据
I don't know why my jqGrid subgrid doesn't show me the data
当我使用 PuTTY 与父亲一起编程时,我的子网格数据出现问题。我们做一个带有子网格的网格;这会收到 JSON 和 PHP 响应。我们在 Mozilla 的净化和 JavaScript 代码的语法中看到了它。可以吗,不是句法语义的问题?
嗯,这是 my page 和我的代码:
$(document).ready(function() {
$("#divFacturas").html("<table><tr><td><table id='grillaFac' name='grillaFac' style=' height=2500px width=100%'></table> <DIV id='pggrillaFac' name='pggrillaFac'></DIV></td></tr></table>");
var usuario = $("#usuario").val();
var clave = $("#clave").val();
creaGrillaFacturas(usuario, clave);
function creaGrillaFacturas(usuario, clave) {
jQuery("#grillaFac").jqGrid(
{
url:'ajaxFacturas.php?usuario=' + usuario + '&clave=' + clave,
datatype: "json",
colNames:['Codigo', 'Tipo', 'Fecha/hora Comprobante', 'Comprobante', 'Debito', 'Credito', 'Resumen'],
colModel:[ { name:'codigo', index:'codigo', width: 80, sorttype:'int'},
{ name:'tipo', index:'tipo'},
{ name:'fecha', index:'fecha'},
{ name:'numero', index:'numero'},
{ name:'debito', index:'debito', align: 'right', formatter:"number", summaryType:'sum' },
{ name:'credito', index:'credito', align: 'right', formatter:"number", summaryType:'sum' },
{ name:'resumen', index:'resumen', align: 'right'}
],
rowNum: 1000,
shrinkToFit: true,
forceFit:true,
loadtext: 'Cargando',
//loadonce: true,
viewrecords: true,
pager: '#pggrilla',
altRows: true,
sortname: 'codigo',
sortorder: "desc",
forceFit : true,
ignoreCase: true,
caption:"Comprobantes encontrados",
//jsonReader: { repeatitems : false, id: 'codigo',
//subgrid: {root: "rows", repeatitems: false}},
jsonReader: { repeatitems: false, id: 'codigo'},
grouping : true,
groupingView : { groupField: ['resumen'],
groupSummary: [true],
groupColumnShow: [true],
groupText: ['<b>Resumen Nro.: {0}</b>'],
groupCollapse: false,
groupOrder: ['desc']},
subGrid: true,
subGridRowExpanded: function (subgrid_id, row_id) {
var subgrid_table_id, pager_id;
subgrid_table_id = subgrid_id+"_t";
pager_id = "p_"+subgrid_table_id;
$("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
jQuery("#"+subgrid_table_id).jqGrid({
url:"subgrid.php?q=1162&id="+row_id,
dataype:"json",
colNames: ['Articulos', 'Descripcion', 'Cantidad', 'Precio unitario'],
colModel:[
{name:"articulo", index:"articulo", width:100},
{name:"detalle", index:"detalle", width:100},
{name:"cantidad", index:"cantidad", width:100},
{name:"precio", index:"precio", width:100}
],
rowNum:20,
viewrecords: true,
//pager: pager_id,
sortname:'articulo',
sortorder:"asc",
height: '100%'
});
//jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false})
}
});
jQuery("#grillaFac").jqGrid('hideCol', ['codigo']);
jQuery("#grillaFac").jqGrid('navGrid', 'pggrillaFac',
{search:true, edit:false, add:false, del:false});
$("#grillaFac").setGridWidth($(window).width()-50);
$("#grillaFac").setGridHeight($(window).height()-50);
}
});
希望你能帮助我:D.
代码中最重要的错误是输入错误:您使用 dataype:"json"
而不是 datatype:"json"
作为子网格的选项。未知选项 dataype
将被忽略,并使用选项 datatype
的默认值 "xml"
。服务器 returns JSON 数据和 jqGrid 将尝试将数据解析为 XML 数据。
我建议您不要使用复古版本的 jqGrid。您当前使用的是 4 岁的 jqGrid 4.4.1。它对应于驾驶40岁的汽车。我建议您使用免费的 jqGrid 4.13.2 并直接从 CDN 加载它。您只需将 jqGrid 文件的 URL 修改为 the wiki article.
中描述的 URL
此外,向子网格添加 idPrefix
选项并使用一些 unique 值作为前缀也很重要。例如,您可以使用 idPrefix: "s_" + row_id + "_"
或 idPrefix: subgrid_id
或仅使用 idPrefix: $.jgrid.randId()
。在 articulo
列中添加 key: true
似乎也不错。
当我使用 PuTTY 与父亲一起编程时,我的子网格数据出现问题。我们做一个带有子网格的网格;这会收到 JSON 和 PHP 响应。我们在 Mozilla 的净化和 JavaScript 代码的语法中看到了它。可以吗,不是句法语义的问题?
嗯,这是 my page 和我的代码:
$(document).ready(function() {
$("#divFacturas").html("<table><tr><td><table id='grillaFac' name='grillaFac' style=' height=2500px width=100%'></table> <DIV id='pggrillaFac' name='pggrillaFac'></DIV></td></tr></table>");
var usuario = $("#usuario").val();
var clave = $("#clave").val();
creaGrillaFacturas(usuario, clave);
function creaGrillaFacturas(usuario, clave) {
jQuery("#grillaFac").jqGrid(
{
url:'ajaxFacturas.php?usuario=' + usuario + '&clave=' + clave,
datatype: "json",
colNames:['Codigo', 'Tipo', 'Fecha/hora Comprobante', 'Comprobante', 'Debito', 'Credito', 'Resumen'],
colModel:[ { name:'codigo', index:'codigo', width: 80, sorttype:'int'},
{ name:'tipo', index:'tipo'},
{ name:'fecha', index:'fecha'},
{ name:'numero', index:'numero'},
{ name:'debito', index:'debito', align: 'right', formatter:"number", summaryType:'sum' },
{ name:'credito', index:'credito', align: 'right', formatter:"number", summaryType:'sum' },
{ name:'resumen', index:'resumen', align: 'right'}
],
rowNum: 1000,
shrinkToFit: true,
forceFit:true,
loadtext: 'Cargando',
//loadonce: true,
viewrecords: true,
pager: '#pggrilla',
altRows: true,
sortname: 'codigo',
sortorder: "desc",
forceFit : true,
ignoreCase: true,
caption:"Comprobantes encontrados",
//jsonReader: { repeatitems : false, id: 'codigo',
//subgrid: {root: "rows", repeatitems: false}},
jsonReader: { repeatitems: false, id: 'codigo'},
grouping : true,
groupingView : { groupField: ['resumen'],
groupSummary: [true],
groupColumnShow: [true],
groupText: ['<b>Resumen Nro.: {0}</b>'],
groupCollapse: false,
groupOrder: ['desc']},
subGrid: true,
subGridRowExpanded: function (subgrid_id, row_id) {
var subgrid_table_id, pager_id;
subgrid_table_id = subgrid_id+"_t";
pager_id = "p_"+subgrid_table_id;
$("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
jQuery("#"+subgrid_table_id).jqGrid({
url:"subgrid.php?q=1162&id="+row_id,
dataype:"json",
colNames: ['Articulos', 'Descripcion', 'Cantidad', 'Precio unitario'],
colModel:[
{name:"articulo", index:"articulo", width:100},
{name:"detalle", index:"detalle", width:100},
{name:"cantidad", index:"cantidad", width:100},
{name:"precio", index:"precio", width:100}
],
rowNum:20,
viewrecords: true,
//pager: pager_id,
sortname:'articulo',
sortorder:"asc",
height: '100%'
});
//jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false})
}
});
jQuery("#grillaFac").jqGrid('hideCol', ['codigo']);
jQuery("#grillaFac").jqGrid('navGrid', 'pggrillaFac',
{search:true, edit:false, add:false, del:false});
$("#grillaFac").setGridWidth($(window).width()-50);
$("#grillaFac").setGridHeight($(window).height()-50);
}
});
希望你能帮助我:D.
代码中最重要的错误是输入错误:您使用 dataype:"json"
而不是 datatype:"json"
作为子网格的选项。未知选项 dataype
将被忽略,并使用选项 datatype
的默认值 "xml"
。服务器 returns JSON 数据和 jqGrid 将尝试将数据解析为 XML 数据。
我建议您不要使用复古版本的 jqGrid。您当前使用的是 4 岁的 jqGrid 4.4.1。它对应于驾驶40岁的汽车。我建议您使用免费的 jqGrid 4.13.2 并直接从 CDN 加载它。您只需将 jqGrid 文件的 URL 修改为 the wiki article.
中描述的 URL此外,向子网格添加 idPrefix
选项并使用一些 unique 值作为前缀也很重要。例如,您可以使用 idPrefix: "s_" + row_id + "_"
或 idPrefix: subgrid_id
或仅使用 idPrefix: $.jgrid.randId()
。在 articulo
列中添加 key: true
似乎也不错。