jqgrid不显示数据,它在localhost中工作正常,但在我的服务器中没有

时间:2012-12-25 12:25:19

标签: php javascript jquery json jqgrid

我在php中的jqgrid遇到了麻烦,我应该说的一切,我的localhost中的每件事都好,但是在我的服务器中它没有 jqgrid没有显示数据,我检查了php文件和js文件,js发送数据到php,并且php选择我需要的数据,但是发生了什么事,php文件没有错误,并且正确填充$ response,然后回显json_encode ($ response); .....我猜这个问题就在这里,当php文件想要发送数据到脚本时...我真的不知道....请帮助我...有代码 js文件:

    <script type='text/javascript'>
        jQuery('document').ready(function() {
            var id = $userId;
            jQuery('#users').jqGrid({
                url:'../includes/ProductHistory/process.php?id='+id,
                datatype: 'json',
                mtype: 'GET',
                direction:'rtl',
                height: 'auto',
                width: '530',
                colNames:['pic ','pname','pdate', 'price'],
                colModel:[
                 {name:'file_url',index:'file_url', width:40 , sortable:false , search:false , edittype: 'image', formatter: imageFormatter},
                 {name:'product_name',index:'product_name', width:65},
                 {name:'created_on',index:'created_on', width:70 ,search:false},
                 {name:'product_final_price',index:'product_final_price', width:60 , sorttype:'number'}
                ],
                rowNum:10,
                rowTotal: 2000,
                rowList : [10,20,30,50],
                rownumbers: true,
                rownumWidth: 15,
                gridview: true,
                pager: '#usersPage',
                sortname: 'created_on',
                viewrecords: true,
                sortorder: 'desc',
                caption: 'products'   
            });


            jQuery('#users').jqGrid('navGrid','#usersPage',
                {
                    edit:false,add:false,del:false,search:false,refresh:true
                },
                {}, // edit options
                {}, // add options
                {}, //del options
                {} // search options
                );
            jQuery('#users').jqGrid('filterToolbar',{stringResult: true,searchOnEnter : false});


        });
        function imageFormatter(cellvalue, options, rowObject) {

        return '<img src= ../' + cellvalue + ' height=80 width=80 />';

        };

    </script>

这是php文件:

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$response->rows[$i]['product_name']   = $row['product_name'];   
$response->rows[$i]['cell'] = array($row['file_url'],$row['product_name'],$row['created_on'],$row['product_final_price']);
$i++;}
 echo json_encode($response);    

我检查了sql查询,我在txt文件中使用fwrite复制它工作正常...但我不知道为什么jqgrid不显示任何东西,它显示列和tne nam eof但它不会使细胞... ..........请帮帮我.....我真的不知道该怎么做....

1 个答案:

答案 0 :(得分:0)

我几乎可以肯定,这是url值不正确。 url通过Ajax调用返回JSON数据。过去调试并不容易......直到有Firebug。

在Firefox中使用Firebug(按F12)并单击“控制台”选项卡,然后刷新页面。查看控制台中返回的数据。如果它不是有效的JSON或者是404错误,那么您知道下一步该做什么。

我只知道如何在Firefox中执行此操作,我无法在Google Chrome或IE Developer Toolbar中找到等效项。希望这会有所帮助。