GVKun编程网logo

后台json数据加载到grid的store中(加载json文件)

10

本文将为您提供关于后台json数据加载到grid的store中的详细介绍,我们还将为您解释加载json文件的相关知识,同时,我们还将为您提供关于ajax获取json数据然后将其装载到jqgrid实现、

本文将为您提供关于后台json数据加载到grid的store中的详细介绍,我们还将为您解释加载json文件的相关知识,同时,我们还将为您提供关于ajax获取json数据然后将其装载到jqgrid实现、ajax请求接收后台json数据格式、ajax调用返回php接口返回json数据 ajax jsonp ajax json实例 ajax获取后台json数、Android:将JSON数据加载到适配器中的实用信息。

本文目录一览:

后台json数据加载到grid的store中(加载json文件)

后台json数据加载到grid的store中(加载json文件)

//页面弹窗

var win = new Ext.Window({
            layout:''fit'',
            width:1020,
            height:600,
            closeAction:''hide'',
            items:[confirm],//在弹窗中嵌套表格;
            modal:true,
            listeners : {
                 ''hide'':function(){
                     store.reload();
                 },
                    ''show'':function(){
                 }
             },
            buttons:[
                {
                    text:''确认'',
                    handler:function(){
                    }
                },{
                    text:''取消'',
                    handler:function(){
                        win.hide();
                    }
                }]
        });

//设定grid格式

var confirm = new Ext.grid.GridPanel({
            store:personStore,
            columns:[
                {header:"商品编号",dataIndex:"Meta_productNo",width :100,align:''left'',resizable:true,sortable:true },
                {header:"商品名称",dataIndex:"Meta_productName",width :100,align:''left'',resizable:true,sortable:true },
                {header:"商品属性",dataIndex:"Meta_attribute",width :100,align:''left'',resizable:true,sortable:true },
                {header:"SKU编号",dataIndex:"Meta_sku",width :100,align:''left'',resizable:true,sortable:true },
                {header:"SKU颜色",dataIndex:"Meta_color",width :100,align:''left'',resizable:true,sortable:true },
                {header:"SKU规格",dataIndex:"Meta_standard",width :100,align:''left'',resizable:true,sortable:true },
                {header:"进货价(元)",dataIndex:"Meta_buyingPrice",width :100,align:''left'',resizable:true,sortable:true},
                {header:"批发价(元)",dataIndex:"Meta_tradePrice",width :100,align:''left'',resizable:true,sortable:true },
                {header:"零售价(元)",dataIndex:"Meta_retaillPrice",width :100,align:''left'',resizable:true,sortable:true },
                {header:"平台评估价(元)",dataIndex:"Meta_appraisePrice",width :100,align:''left'',resizable:true,sortable:true },
            ],
            layout:''fit''
        });

//设定JsonStore

var personStore = new Ext.data.JsonStore({
            method : "POST",
            fields : ["Meta_productNo","Meta_productName","Meta_attribute","Meta_sku","Meta_color","Meta_standard","Meta_buyingPrice","Meta_tradePrice","Meta_retaillPrice","Meta_appraisePrice"]        //与Grid1列一致,至少列名称一致
        });

//重头戏=======加载后台json数据弹窗展示

var data = Ext.util.JSON.decode(response.responseText);
personStore.loadData(data);
win.show();

//后台的json格式直接返回跟JsonStore中的格式一样,无需前缀,例如:

[{"Meta_productNo":"20012111","Meta_productName":"凯旋1664 360全网通","Meta_attribute":"全网通","Meta_sku":"200121113344","Meta_color":"红色","Meta_standard":"8G-64G","Meta_buyingPrice":"0.000000","Meta_tradePrice":"0.000000","Meta_retaillPrice":"0.000000","Meta_appraisePrice":"0.000000"}]

ajax获取json数据然后将其装载到jqgrid实现

ajax获取json数据然后将其装载到jqgrid实现

1. 通过ajax同步获取json数据


2. 本地装载jqgrid数据

$("#grid").jqgrid({

datatype: "local",

data : mydata,Hei; font-size:14px"> colNames: ["ID","用户名","上次登录时间","状态","操作"],Hei; font-size:14px"> colModel: [

{ name: "ID",index: "ID",hidden: true,align: "center" },Hei; font-size:14px"> { name: "username",index: "username",width: 180,align:"center"},Hei; font-size:14px"> { name: "loginTime",index: "loginTime",width: 300,align:"center" },Hei; font-size:14px"> { name: "state",index: "state",Hei; font-size:14px"> { name: "cz",index: "cz",width: 360,align:"center" }

],Hei; font-size:14px"> onSelectRow: function (i,selected) {

},Hei; font-size:14px"> gridComplete: function(){

var ids = jQuery("#grid").jqgrid('getDataIDs');

for(var i in ids){

var cl = ids[i];

a = "<a title='编辑' href='<%=projectName %>/Web/login/dologout.action' ><img src='../common/images/edit.png' alt='编辑'border='0'></a>";

// se = "<inputtype='button' value='S' onclick="jQuery('#grid').saveRow('"+cl+"');" />";

jQuery("#grid").jqgrid('setRowData',ids[i],{cz:a});

}

},Hei; font-size:14px"> height: 300,Hei; font-size:14px"> // altRows:true,Hei; font-size:14px"> // pgbuttons: true,Hei; font-size:14px"> // pginput:true,Hei; font-size:14px"> //autowidth:true,Hei; font-size:14px"> // pager: "#pager",Hei; font-size:14px"> // rowNum: 10,Hei; font-size:14px"> // multiselect: true,Hei; font-size:14px"> // prmNames: { rows: "pageSize",page: "page" },Hei; font-size:14px"> // rowList: [10,20,30],Hei; font-size:14px"> // viewrecoders: true,Hei; font-size:14px"> caption: "系统用户信息"

});

3. action部分代码

List<Xtuser> xtusers = (List<Xtuser>)loginInfoDao.findByHql(" from Xtuser xtuser",null,0);

//将List转化为JSON

JSONArray json=JSONArray.fromObject(xtusers);

//设置编码,防止乱码

response.setCharacterEncoding("utf-8");

PrintWriter out;

try {

out = response.getWriter();

out.write(json.toString());

} catch (IOException ex) {

ex.printstacktrace();

}

附:本地装载数据后实现分页效果(这里无需显示总条数,适合于我。)

height: 'auto',Hei; font-size:14px"> pager: "#pager",Hei; font-size:14px"> rowNum: 10,Hei; font-size:14px"> prmNames: { rows: "pageSize",Hei; font-size:14px"> rowList: [10,Hei; font-size:14px"> 勿忘显示分页的div:<div id="pager" ></div> 。

注意:从后台返回的json数据中如果有id,则将会覆盖jqgrid每行数据的id:

<TR id=3role=row tabIndex=-1></TR>

建议,自定义类中不要出现id属性.




http://blog.sciencenet.cn/blog-448935-804589.html

ajax请求接收后台json数据格式

ajax请求接收后台json数据格式

1.准备一个jsp页面     该处有一个较为重要的点(var  obj = eval(‘(backDate)‘);)这是将字符串格式转化为json数据对象

注: 我传输的是json数组格式             json数据有两种格式{键名 :值}    ["值","",""]    只是相对应的java后台json数据处理方式不同

分享图片

 

2.在网上下载json.jar相关jar包(该jar包解决对象与json数据格式的相互转化,较为方便) 下载地址    :http://www.pc6.com/softview/SoftView_468549.html

分享图片

 3.准备java后台

分享图片

ajax调用返回php接口返回json数据 ajax jsonp ajax json实例 ajax获取后台json数

ajax调用返回php接口返回json数据 ajax jsonp ajax json实例 ajax获取后台json数

php代码如下:

<span><?php </span>header(<span>''Content-Type: application/json''</span>);
    header(<span>''Content-Type: text/html;charset=utf-8''</span>);

    <span>$email </span><span>= </span><span>$_GET[</span><span>''email''</span><span>]</span>;

    <span>$user </span><span>= </span><span>[]</span>;

    <span>$conn </span><span>= @</span>mysql_connect(<span>"localhost"</span>,<span>"Test"</span>,<span>"123456"</span>) <span>or die</span>(<span>"Failed in connecting database"</span>);
    mysql_select_db(<span>"Test"</span>,<span>$conn</span>);
    mysql_query(<span>"set names ''UTF-8''"</span>);
    <span>$query </span><span>= </span><span>"select </span><span><em>*</em></span><span> from UserInformation where email = ''"</span><span>.</span><span>$email</span><span>.</span><span>"''"</span>;
    <span>$result </span><span>= </span>mysql_query(<span>$query</span>);
    <span>if </span>(<span>null </span><span>== </span>(<span>$row </span><span>= </span>mysql_fetch_array(<span>$result</span>))) <span>{
</span><span>echo </span><span>$_GET[</span><span>''callback''</span><span>]</span><span>.</span><span>"(no such user)"</span>;
    <span>} </span><span>else </span><span>{
</span><span>$user[</span><span>''email''</span><span>] </span><span>= </span><span>$email</span>;
        <span>$user[</span><span>''nickname''</span><span>] </span><span>= </span><span>$row[</span><span>''nickname''</span><span>]</span>;
        <span>$user[</span><span>''portrait''</span><span>] </span><span>= </span><span>$row[</span><span>''portrait''</span><span>]</span>;
        <span>echo </span><span>$_GET[</span><span>''callback''</span><span>]</span><span>.</span><span>"("</span><span>.</span>json_encode(<span>$user</span>)<span>.</span><span>")"</span>;
    <span>}
</span><span>?&gt;</span></span>
登录后复制
js代码如下:

<script>
        $.ajax({
            url: "http://test.localhost/UserInterfaceForChatroom/UserInformation.php?email=pshuyue@gmail.com",
            type: "GET",
            dataType: &#39;jsonp&#39;,
            //            crossDomain: true,
            success: function (result) {
                //                data = $.parseJSON(result);
                //                alert(data.nickname);
                alert(result.nickname);
            }
        });
    </script>
登录后复制

其中遇到了两个问题:

1.第一个问题:

Uncaught SyntaxError: Unexpected token :

解决方案如下:

This has just happened to me, and the reason was none of the reasons above. I was using the jQuery command getJSON and adding callback=? to use JSONP (as I needed to go cross-domain), and returning the JSON code {"foo":"bar"} and getting the error.

This is because I should have included the callback data, something like jQuery17209314005577471107_1335958194322({"foo":"bar"})

Here is the PHP code I used to achieve this, which degrades if JSON (without a callback) is used:

立即学习“PHP免费学习笔记(深入)”;

<span>$ret</span><span>[</span><span>''foo''</span><span>]</span><span>=</span><span>"bar"</span><span>;</span><span>
finish</span><span>();</span><span>function</span><span> finish</span><span>()</span><span>{</span><span>
    header</span><span>(</span><span>"content-type:application/json"</span><span>);</span><span>if</span><span>(</span><span>$_GET</span><span>[</span><span>''callback''</span><span>])</span><span>{</span><span>print</span><span> $_GET</span><span>[</span><span>''callback''</span><span>].</span><span>"("</span><span>;</span><span>}</span><span>print</span><span> json_encode</span><span>(</span><span>$GLOBALS</span><span>[</span><span>''ret''</span><span>]);</span><span>if</span><span>(</span><span>$_GET</span><span>[</span><span>''callback''</span><span>])</span><span>{</span><span>print</span><span>")"</span><span>;</span><span>}</span><span>exit</span><span>;</span><span>}</span>
登录后复制

Hopefully that will help someone in the future.

2.第二个问题:

解析json数据。从上面的javascript中可以看到,我没有使用jquery.parseJSON()这些方法,开始使用这些方法,但是总是会报

VM219:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1

的错误,后来不用jquery.parseJSON()这个方法,反而一切正常。不知为何。

以上就介绍了ajax调用返回php接口返回json数据,包括了ajax,json方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Android:将JSON数据加载到适配器中

Android:将JSON数据加载到适配器中

这可能是一个我正在努力解决的简单的 Java问题,但是我正在寻求社区帮助我,因为我遇到了这种情况.

我成功地从MySQL数据库中获取数据并通过JSON将其带到应用程序.在解析期间,我试图创建另一个数组以传递到ArrayAdapter以在ListView中使用.这是我遇到问题的代码:

try{

       jArray = new JSONArray(result);
       JSONObject json_data=null;

           for(int i=0;i<jArray.length();i++){
              json_data = jArray.getJSONObject(i);
              ct_id=json_data.getString("ID");
              ct_name=json_data.getString("Player2N");

              Games game_data[] = new Games[]
              {
                new Games(ct_id,ct_name)     
              };

           }

           GameAdapter adapter = new GameAdapter(this,R.layout.listview_item_row,game_data);

           listView1 = (ListView)findViewById(R.id.listView1);

           View header = (View)getLayoutInflater().inflate(R.layout.listview_header_row,null);
           listView1.addHeaderView(header);
           listView1.setAdapter(adapter);
 }

这一行:GameAdapter adapter = new GameAdapter(this,game_data);

更具体地说,game_data在Eclipse中以红色突出显示.我很好奇的是为什么game_data在循环结束后无法触及?我只是想在这里将JSON行中的特定字段添加到适配器中.

我也尝试在设置数组时循环,但仍然没有骰子,因为新的Games []收到错误.这是一个例子:

Games game_data[] = new Games[]
                       {
                        for(int i=0;i<jArray.length();i++){
                         json_data = jArray.getJSONObject(i);
                         ct_id=json_data.getString("ID");
                          ct_name=json_data.getString("Player2N");

//                  Games game_data[] = new Games[]
  //                {
                    new Games(ct_id,ct_name);    
    //              };

               }

错误:变量必须提供维度表达式或数组初始值设定项.

解决方法

希望这可以帮助…

try{

   jArray = new JSONArray(result);
   JSONObject json_data=null;
   Games game_data[];
   game_data[] = new Games[jArray.length()];
       for(int i=0;i<jArray.length();i++){
          json_data = jArray.getJSONObject(i);
          ct_id=json_data.getString("ID");
          ct_name=json_data.getString("Player2N");

          game_data[i] = new Games(ct_id,ct_name);


       }

       GameAdapter adapter = new GameAdapter(this,game_data);

       listView1 = (ListView)findViewById(R.id.listView1);

       View header = (View)getLayoutInflater().inflate(R.layout.listview_header_row,null);
       listView1.addHeaderView(header);
       listView1.setAdapter(adapter);

}

今天的关于后台json数据加载到grid的store中加载json文件的分享已经结束,谢谢您的关注,如果想了解更多关于ajax获取json数据然后将其装载到jqgrid实现、ajax请求接收后台json数据格式、ajax调用返回php接口返回json数据 ajax jsonp ajax json实例 ajax获取后台json数、Android:将JSON数据加载到适配器中的相关知识,请在本站进行查询。

本文标签: