您好我的jqgrid遇到麻烦,我的jqgrid在本地加载一个xml文件(本地所有工作),但在服务器上没有加载任何东西,我尝试了我在互联网上找到的每个代码,但我不知道为什么它没有加载网格中的数据,jqgrid总是显示一条消息,说明正在加载......我等了一段时间,然后它停止了并且没有加载任何东西,有人可以帮忙吗?本地工作,但在服务器acugis不,请帮助
这是我的代码:
$("#listaRedCuidadana").jqGrid({
treeGrid: true,
treeGridModel : 'adjacency',
ExpandColumn : 'distrito',
url: '../../red_ciudadana/controller/controllerMostrarRedCuidadana.php',
treeReader: {
level_field: 'level',
parent_id_field: 'parent_id',
leaf_field: 'isLeaf',
expanded_field: 'expanded'
},
datatype: "xml",
mtype: "POST",
colNames:["id_ciudadano","Distrito","Seccion","Rol","Clave Electoral","Nombre","Apellido Paterno","Apellido Materno"],
colModel:[
{name:'id_ciudadano',index:'id_ciudadano', width:1,hidden:true,key:true},
{name:'distrito',index:'distrito',align:"left"},
{name:'seccion',index:'seccion', width:60,align:"center"},
{name:'rol',index:'rol', width:150,align:"left"},
{name:'clave_electoral',index:'clave_electoral', width:150,align:"center"},
{name:'nombre',index:'nombre', width:100,align:"left"},
{name:'apaterno',index:'apaterno', width:100,align:"left"},
{name:'amaterno',index:'amaterno', width:100,align:"left"}
],
width:'916',
/*autowidth:true,*/
height:'auto',
pager: '#pager',
caption:"COORDINADORES DISTRITALES",
onSelectRow: function(id){
var clv=$('#listaRedCuidadana').jqGrid('getCell',id,4);
mostrarDetallesCuidadano(clv);
initMapa();
}
});
$("#listaRedCuidadana").jqGrid('navGrid',"#pager",{edit:false,add:false,del:false});
和我的.php文件
<?php
require_once '../../sesion/model/clsSesion.php';
require_once '../../red_ciudadana/model/modelRedCuidadana.php';
if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) {
header("Content-type: application/xhtml+xml;charset=utf-8"); } else {
header("Content-type: text/xml;charset=utf-8");
}
if(isset($_REQUEST['nodeid'])==FALSE) {
$node =0;
}
else{
$node = (integer)$_REQUEST["nodeid"];
}
$clsJqGrid = new redCuidadana();
$et = ">";
echo "<?xml version='1.0' encoding='utf-8'?$et\n";
echo "<rows>";
echo "<page>1</page>";
echo "<total>1</total>";
echo "<records>1</records>";
if($node >0) { //check to see which node to load
$wh = 'parent_id='.$node; // parents
//$n_lvl = $n_lvl+1; // we should ouput next level
} else {
//$wh = 'ISNULL(parent_id)';
$wh ='parent_id=0';// roots
}
$mostrarRegistros= $clsJqGrid->mostrarRegistros($wh);
foreach ($mostrarRegistros as $row){
echo "<row>";
echo "<cell>".$row["id_ciudadano"]."</cell>";
echo "<cell>".$row["distrito"]."</cell>";
echo "<cell>".$row["seccion"]."</cell>";
echo "<cell>".$row["rol"]."</cell>";
echo "<cell>".$row["clave_electoral"]."</cell>";
echo "<cell>".$row["nombre"]."</cell>";
echo "<cell>".$row["apaterno"]."</cell>";
echo "<cell>".$row["amaterno"]."</cell>";
echo "<cell>".$row["level"]."</cell>";
echo "<cell><![CDATA[".$row["parent_id"]."]]></cell>";
if($row["level"] == "2"){echo "<cell>"."true"."</cell>";}
else{echo "<cell>".$row["isLeaf"]."</cell>";}
echo "<cell>".$row["expanded"]."</cell>";
echo "</row>";
}
echo "</rows>";
?>
答案 0 :(得分:1)
1。尝试简单地从php回显样本xml而不执行任何逻辑,看看它是否被JS脚本接收;
2。如前所述,尝试直接在浏览器中访问PHP脚本,看看它是否返回有效结果;
3。尝试在chrome中调试代码(不仅仅是在ff:firebug中),这些都是很棒的工具,有时chrome可以显示ff错过了什么(反之亦然)。
这些步骤将帮助您隔离并发现问题。如果您上面检查过所有这些子弹并且问题仍然存在 - 在主题中提供结果,那么我们将有机会帮助您。
干杯,祝你好运;)