extjs是不是要求远程返回的数据必须是json或xml啊

问题描述

今天用sample中的Customer Search Field 结合 GridPanel 做一个查找功能,两者用的数据是同一个GroupingStore,通过proxy 从服务器取数据。服务器返回的是数组形式,但我发现当点下搜索按钮就报错:"F has no property"或"SP has no property",用Firebug 也找不到原因,就想问一下,会不会是因为远程返回的数据必须用json或xml格式呢?问题补充:谢谢jayxu的回答,我刚才仔细测试了一下(顺便说一下,今天用IE8的Developer Tools),终于找到了问题,就是:groupField 指定的栏位,在columns -- header 中一定要写dataIndex。我debug到ext-all-debug里发现,如果不写的话,会在findColumnIndex时出错。问题补充:漏了说,服务器返回数组也是可以的。因为我这里不需要翻页,所以用Array简单一点。问题补充:Ext.onReady(function(){ Ext.QuickTips.init(); var xg = Ext.grid; var ds = new Ext.data.GroupingStore({ url: 'voice/searchPhone.do', reader: new Ext.data.ArrayReader({}, [ {name: 'category'}, {name: 'phoneno'}, {name: 'name'} ]),sortInfo:{field: 'phoneno', direction: "ASC"}, groupField:'category' }); var grid = new xg.GridPanel({ store: ds, columns: [ {header: "phoneno", width: 20, dataIndex:"phoneno"}, {header: "name", width: 20, dataIndex:"name"}, {header: "category", dataIndex: "category", hidden: true} ], view: new Ext.grid.GroupingView({ forceFit:true, groupTextTpl: '{text} ({[values.rs.length]} {[values.rs.length > 1 ? "Items" : "Item"]})' }), //frame:true, hideHeaders: true, width: 400, height: 300, iconCls: 'icon-grid' //renderTo: document.body }); //ds.load(); /** * Dial window */ var win = new Ext.Window({ id:'hello-win', title:'Search phone-no and people', layout:'fit', width:450, height:350, closeAction:'hide', plain: true, items: grid, tbar: [ 'Search: ', ' ', new Ext.app.SearchField({ id: 'searchField', store: ds, width:280 }), new Ext.Button({ text: 'Dial', handler: dial }) ] }); });

解决方案

前台需要什么样格式的数据 后台就返回什么不过就EXT而言 还不能处理自定义对象的数据

时间: 2024-11-05 16:27:54

extjs是不是要求远程返回的数据必须是json或xml啊的相关文章

开发流程- 公司要与其他网站合作,要求开发api接口,供合作方调用,返回的数据是json或xml格式的

问题描述 公司要与其他网站合作,要求开发api接口,供合作方调用,返回的数据是json或xml格式的 请问这个开发流程大概是怎样的?求解..................................................... 解决方案 asp.net webapi非常适合做这个,你只要按照你原来的方式编写函数调用,它会自动将提交的数据转换成对象,作为参数传入,以及传出的参数转换成json返回. 解决方案二: 不管你后台用.net还是java还是php,你只需要公布一个可以访问的

在EXTJS中怎么把从表单提交中返回的数据. 展现到已有的grid中.

问题描述 在EXTJS中怎么把从表单提交中返回的数据. 展现到已有的grid中. 在EXTJS中怎么把从表单提交中返回的数据. 展现到已有的grid中. 解决方案 http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.form.Basic getValues grid.getStore().add( formpanel.getValues());

ajax怎么将后台返回的数据用作extjs的store

问题描述 ajax怎么将后台返回的数据用作extjs的store 解决方案 两种方式,一种修改ajax同步方式 method:'post', async: false, dataType:'json' 另一种,把stroe的数据加载放到success方法中进行 解决方案二: detailStore的声明要写在方法的外面啊 解决方案三: var dataGrid=Ext.create('Ext.grid.Panel'........ 放入你的success回调中执行,或者ajax设置为同步请求,d

java-关于Java中Extjs前端与后台之间的数据交互

问题描述 关于Java中Extjs前端与后台之间的数据交互 本人java新手,最近新进一家公司,前端用的是Extjs,但是这个Extjs以前都没接触过,所以求大神能不能发我一个Extjs前端与java后台之间的数据交互的实例(前端输入数据,后台根据该数据在数据库中查,然后返回对应数据到前端,前端显示返回的数据),最好是用SH2框架.发我邮箱cgjiangpan@163.com,非常感谢.!!! 解决方案 网上那么多,就是通过json传输数据,如果你想用extjs,建议买本书先学习一下 解决方案二

ExtJs的Combox从后台获取数据无法显示出来,请大虾们帮我看下!

问题描述 前台js代码var projectStore = new Ext.data.JsonStore({ url : 'http://localhost:8080/HyitSystem/provinceData.action',//这里是数据源,这地方我用的ajax映射到后台的service方法,返回上面的JSON串数据 root : 'value',//这里的value对应上传JSON串中的value fields : ['id','province']//这里的两个变量也分别对应上面JS

jquery 的 ajax的dataType,服务器返回了数据,但是succes:function(data)不执行

当ajax中设置的dataType的类型和 服务器返回的数据类型不一致时,succes:function(data)会不执行 如服务器ServletActionContext.getResponse().getWriter().print("error"); 前台 $.ajax({type:"POST",dataType:"json",//指定返回的数据类型,自动解析,当不匹配时不会执行succes:function(data),json数据ur

ajax请求返回的数据看不到回调函数没有执行也没报错

  ajax请求返回的数据看不到回调函数没有执行,哪里都没有报错,有类似情况的朋友可以参考下本文 项目用的是ssh,使用jquery的$.post访问struts2的Action,哪里都没有报错,可就是没有结果. 现在$.post要返回保存着权限的集合Collection ,权限类Privilege和用户类User相互关联,也就是Privilege里使用set集合保存着拥有这个权限的用户Set,用户User里也使用set集合保存着用户有的权限Set .数据都到action里了,但是回调函数没有执

jquery .ajax方法异步表单接收服务器返回的数据

  $(document).ready( function () { $.ajax({ type: "Get", //提交的方式 get/post url: "Check.ashx", //异步提交表单的url data: { username: $("#username").val(), password: $("#password").val() }, //要提交的值 success: function (result)

利用js读取动态网站从服务器端返回的数据

 这篇文章主要介绍了利用js读取动态网站从服务器端返回的数据,需要的朋友可以参考下 在html中利用js读取动态网站从服务器端返回的数据进行显示    1.js.html 页面    需要引入 执行jquery的js文件  复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  <HTML>  <HEAD>  <TITLE> New Docume