Ext中json解析如何获取属性名

在Ext中解析json数据用Ext.decode(str);
比如{'value':'this is value'}这个,我应该怎么获取到value呢?我知道获取“This is value”是通过obj.value,可是value是动态的,我怎么知道obj下有没有value这个属性名呢?

1个回答

for(var p in Ext.decode(str))
{
alert(p);
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Ext json 问题
后台 String json = "{success:"; if (b) json += "true"; else json += "false"; json += "}"; try { response.getWriter().write(json); } catch (IOException e) { e.printStackTrace(); } 前台 [code="java"] _login.getForm().submit({ success : function(json) { Ext.Msg.alert("成功提示", "大家好啊,成功了!"); [/code] 如何 获取 json 里传过来的值 用 var data=eval("("+json+")"); 在 data.result 获取不到
各位软件牛人怎么通过ext获得json的数据。
各位软件牛人怎么通过ext获得json的数据。有没有简单的例子???
Ext.JSON.encode方法
我想将Ext里面的model转成json字符串,如下 [code="java"]var p1 = Ext.create("Person",{id:1,name:'中文',email:'xuting306333@sina.com'});console.log(Ext.JSON.encode(p1.raw));[/code] 但是转出来之后变成了这个样子 [code="java"]{"id":1,"name":"\u4e2d\u6587","email":"xuting111@sina.com"} [/code] name里面的中文字符帮我转成了这个样子,有没有变法不要这种效果,还要这种效果 [code="java"]{"id":1,"name":"中文","email":"xuting111@sina.com"} [/code]
ext 一个json对象中有多种数据
[code] {"name":"custom", "field1":null, "field2":null, "field3":null, "root":[{"id":"1","name":"company1"},{"id":"2","name":"company2"}]} 学习ext不久,在使用struts2中的json-plugin插件时,发现其将action中的值都转化成了json数据 如上,我的问题是我可以通过 var store = new Ext.data.Store({ url: 'example/JSONExample.action', reader: new Ext.data.JsonReader({ root:'root', //........ }); 拿到所有的root数据,但如何得到name,field1.....这样的字段的数据? [/code] [b]问题补充:[/b] 谢谢!!!问题已采纳 我还有一个很小的问题 [code] store.on("load",function(){ alert(store.reader.jsonData.name); }) store.load(); [/code] 我需要在store.load前+这样的一句话才能得到数据 为什么在store.load()后面调用就只会报undefine? 望告知,不甚感谢
Ext.data.JsonReader 解析 json 的联合主键数据 求教?
json 数据: { "list": [ { "contractPeople":"98","description":"98", "id"{"code":"98","type":"98"}, "infoSource":"1","infoSourceType":"1","note":"98","usebyDepartment":"98" } ], "totalCount":1 } 难点: "id":{"code":"99","type":"99"} 这个是json转化来的 联合主键 数据 格式 ext 用 reader:new Ext.data.JsonReader 解析普通属性没问题,在里面一加 "id":{"code":"99","type":"99"} 这 样的格式就不行了 试了好几种方式 ,都不行也不知道是不是ext 不支持json转化的联合主键 "id":{"code":"99","type":"99"} 格式 有了解的提示一下,非常感谢 找不到解决办法 头痛..... 哪位帮忙了 多谢 [b]问题补充:[/b] 用不了 多谢 哪位帮忙看看了
ext + json 顯示問題
[code="java"] jsonObject = new JSONObject(); jsonArray = JSONArray.fromObject(empList); jsonObject.put("empList", jsonArray); out.print(jsonObject); 按道理 我把集合轉換成json數據,然後輸出, 就可以在頁面裏面去訪問啊 但是我在 ext 中 用的時候不行, 就是直接 empList.*** 就可以了吧 請問誰知道不 [/code]
ext 怎样读取json 数据 谢谢
public String browse() { this.list = this.manager.getAll(); JSONArray jsonArray = JSONArray.fromObject(this.list); String userString = jsonArray.toString(); System.out.println(userString); return Action.SUCCESS; } 我现在已经把list封装成json的格式了,请高手把ext解析的代码列出 !谢谢
ext通过json读取数据库日期问题
刚接触ext没有多久,碰到这个问题,还望大家不吝赐教啊 从数据库中取出数据以后,放到extjs中的grid 中,用renderer:Ext.util.Format.dateRenderer('Y年m月d日')进行格式化,页面输出结果竟然得到 NaN 年NaN月NaN日 这个怎么解决? 急求答案啊 [b]问题补充:[/b] lovewhzlq (资深架构师) -------------------------------- 刚接触ext,您说的还不太明白,能具体点吗 [b]问题补充:[/b] [code="java"] var cm = new Ext.grid.ColumnModel([ {header:'学号',dataIndex:'studentid',sortable:true}, {header:'姓名',dataIndex:'studentname',sortable:true}, {header:'性别',dataIndex:'sex',sortable:true}, {header:'生日',dataIndex:'birthday',sortable:true,renderer :Ext.util.Format.dateRenderer('m/d/Y')}, {header:'班级',dataIndex:'class',sortable:true}, {header:'专业',dataIndex:'discipline',sortable:true}, {header:'籍贯',dataIndex:'address',sortable:true} ]); var store = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({url:'studentList.action'}), reader: new Ext.data.JsonReader({ totalProperty : 'totalCount', root: 'list', successProperty :'success' }, [ {name: 'studentid',mapping:'studentid',type:'int'}, {name: 'studentname',mapping:'studentname',type:'string'}, {name: 'sex',mapping:'sex',type:'int'}, {name: 'birthday',mapping:'birthday',type:'date'}, {name: 'class',mapping:'class_',type:'int'}, {name: 'discipline',mapping:'discipline',type:'int'}, {name: 'address',mapping:'address',type:'string'} ]) }); [/code] [b]问题补充:[/b] 日期格式竟然是 2008-10-23T10:30:00 这是通过json从oracle数据库中取得的
关于EXT用json返回结果分页的问题
最近在用ext,可遇到了一个很奇怪的问题 index.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href=" <%=basePath%>"> <title>My JSP 'index.jsp' starting page </title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <link rel="stylesheet" type="text/css" href="resources/css/ext-all.css" /> <script type="text/javascript" src="js/ext-base.js"> </script> <script type="text/javascript" src="js/ext-all-debug.js"> </script> <script type="text/javascript" src="js/ext-lang-zh_CN.js"> </script> <script> function renderSex(value) { if (value == 'male') { return " <span style='color:red;font-weight:bold;'>红男 </span> <img src='user_male.png' />"; } else { return " <span style='color:green;font-weight:bold;'>绿女 </span> <img src='user_female.png' />"; } } function renderDescn(value, cellmeta, record, rowIndex, columnIndex, store) { var str = " <input type='button' value='查看详细信息' onclick='alert(\"" + "这个单元格的值是:" + value + "\\n" + "这个单元格的配置是:{cellId:" + cellmeta.cellId + ",id:" + cellmeta.id + ",css:" + cellmeta.css + "}\\n" + "这个单元格对应行的record是:" + record + ",一行的数据都在里边\\n" + "这是第" + rowIndex + "行\\n" + "这是第" + columnIndex + "列\\n" + "这个表格对应的Ext.data.Store在这里:" + store + ",随便用吧。" + "\")'>"; return str; } Ext.onReady(function(){ var sm = new Ext.grid.CheckboxSelectionModel(); var cm = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), sm, {header:'编号',dataIndex:'id',sortable:true}, {header:'性别',dataIndex:'sex',sortable:true,renderer:renderSex}, {header:'名称',dataIndex:'name',sortable:true}, {header:'描述',dataIndex:'descn',sortable:true,renderer:renderDescn} ]); var ds = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({url:'gird.jsp'}), reader: new Ext.data.JsonReader({ totalProperty: 'totalProperty', root: 'root' },[ {name: 'id',mapping:0}, {name: 'sex',mapping:1}, {name: 'name',mapping:2}, {name: 'descn',mapping:3} ]) }); var grid = new Ext.grid.GridPanel({ renderTo: 'grid', height:500, ds: ds, cm: cm, sm: sm, bbar: new Ext.PagingToolbar({ pageSize: 2, store: ds, displayInfo: true, displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条', emptyMsg: "没有记录" }) }); ds.load({params:{start:0,limit:2}}); grid.render(); }); </script> </head> <body> <div id="grid" style="height:265px;"> </div> <br> </body> </html> gird.jsp <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href=" <%=basePath%>"> <title>My JSP 'gird.jsp' starting page </title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> <% String start = request.getParameter("start"); String limit = request.getParameter("limit"); System.out.println("start=" + start); System.out.println("limit=" + limit); try { int index = Integer.parseInt(start); int pageSize = Integer.parseInt(limit); String json = "{totalProperty:100,root:["; for (int i = index; i < pageSize + index; i++) { json += "{id:" + i + ",sex:'sex" + i + "',name:'name" + i + "',descn:'descn" + i + "'}"; if (i != pageSize + index - 1) { json += ","; } } json += "]}"; System.out.println("json===" + json); response.getWriter().write(json); response.getWriter().close(); } catch(Exception ex) { } %> </body> </html> 刷新index.jsp打印出来 start=0 limit=2 json==={totalProperty:100,root:[{id:0,sex:'sex0',name:'name0',descn:'descn0'},{id:1,sex:'sex1',name:'name1',descn:'descn1'}]} 点分页的下一页打印出 start=2 limit=2 json==={totalProperty:100,root:[{id:2,sex:'sex2',name:'name2',descn:'descn2'},{id:3,sex:'sex3',name:'name3',descn:'descn3'}]} 可页面gird里就是没有数据,分页有效 gird.jsp里的json是出来了,但index.jsp里的ext接收不到数据,表格里就是没数据显示,但表格也只显示2列,就是没实际的数据结果 这是为什么?
struts1.2页面通过ext获取json数据问题,为什么没有数据?
这是我的代码,望各位大哥大姐们 看看,帮我找找问题,谢谢了! 我 url: 'login.do?method=alluser',这句代码没有执行,因为后台没有打印, 页面的ext代码: Ext.onReady(function(){ Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); // example of custom renderer function var store = new Ext.data.JsonStore({ autoload:true, proxy: new Ext.data.HttpProxy({ url: 'login.do?method=alluser', method:'post', reader: new Ext.data.JsonReader({ totalProperty:'pageInfo', root:'data', fields:[ {name: 'userid',mapping:'data.userid'}, {name: 'groupid',mapping:'data.groupid'}, {name: 'username',mapping:'data.username'}, {name: 'pwd', mapping:'data.pwd'}, {name: 'store',mapping: 'data.store'}, {name: 'rfset', mapping: 'data.rfset'} ] }) }) }); // create the Grid var grid = new Ext.grid.GridPanel({ store: store, columns: [ {id:'userid',header: "userid", width: 60, sortable: true, dataIndex: 'userid'}, {header: "groupid", width: 60, sortable: true, dataIndex: 'groupid'}, {header: "username", width:60, sortable: true, dataIndex: 'username'}, {header: "pwd", width:60, sortable: true, dataIndex: 'pwd'}, {header: "store", width: 60, sortable: true, dataIndex: 'store'}, {header: "rfset", width: 60, sortable: true, dataIndex: 'rfset'} ], autoWidth:false, width:780, autoHeight:true, bbar: new Ext.PagingToolbar({ pageSize: 25, store: store, displayInfo: true, displayMsg: ' 本页显示从{0} 到 {1} 条,共 {2} 条数据', emptyMsg: "没有可以显示的数据" }) }); grid.render('grid-example'); grid.getSelectionModel().selectFirstRow(); }); JavaAction代码: public ActionForward alluser(ActionMapping mapping, ActionForm form, HttpServletRequest req, HttpServletResponse res) throws IOException{ ILoginservice inter=(Loginservice)this.getBean("loginDao"); List users=inter.findAll(Userinfo.class); System.out.print("====================================="); JSONArray arr=new JSONArray(); String tabstring=""; for(Object o : users){ Userinfo u=(Userinfo)o; arr.add(u); } try { JSONObject object=new JSONObject(); object.put("data", arr); object.put("pageInfo",users.size()); tabstring = object.toString(); } catch (Exception e) { tabstring = "ss"; } System.out.println("++++++++++++++++"+tabstring); res.getWriter().write(tabstring); return mapping.findForward("userlist"); }
ExtJs怎么样解析服务端返回的Json?
Ext怎么样解析服务端返回的json?比如说acton返回了一组json,[{id:'1',name:'xiaoMing'}],如何在js里得到这个name字段的值?
ext中怎样从yahoo网站动态获取xml文件并解析
[size=small][color=red]我现在想实现这样一个功能,在本地传递参数到yahoo网站,该网站根据我的参数返回我需要的数据,返回的是xml格式文件,类似于动态查询天气服务的功能。现在我能够实现对本地的xml文件进行解析处理,但不知如何从yahoo网站上动态获取这个xml文件然后再解析,不知用什么方法可以实现。就是类似于动态查询城市天气的功能,关键问题是怎么从网站上得到这个xml文件然后本地解析通过ext的grid组件显示出来?[/color][/size] [code="java"] var store = new Ext.data.Store({ // load using HTTP url: 'bagSearch50.xml', //本地xml文件 // the return will be XML, so lets set up a reader reader: new Ext.data.XmlReader({ // records will have an "Item" tag record: 'Product', id: 'Catalog' //'ASIN', //totalRecords: '@total' }, [ // set up the fields mapping into the xml doc // The first needs mapping, the others are very basic {name: 'ProductName', mapping: 'Catalog > ProductName'}, 'Brand', {name: 'Summary', mapping: 'Catalog > ProductName'}, 'NumOfStores', 'PriceFrom', 'Description', // Detail URL is not part of the column model of the grid 'Url' ])[/code] [b]问题补充:[/b] [size=x-small][color=blue]谢谢关注,有点抽象啊,不明白,可否再详细点,小弟新手,经验不足,还请多指导指导。[/color][/size] [b]问题补充:[/b] [code="java"] var store = new Ext.data.Store({ url: 'Services/ArticleService.asmx/GetArticles', // Web Service 地址 reader: new Ext.data.XmlReader( { totalRecords: 'totalRecords', // 数据总行数。对应于 GetArticles 返回的 DataSet 中的 results 表的 totalRecores 列 record: 'record', // 数据。对应于 GetArticles 返回的 DataSet 中的 record 表 id: 'Id' // 主键。对应于 GetArticles 返回的 DataSet 中的 record 表的 Id 列 }, [ {name: 'Id'}, {name: 'Title'}, {name: 'Date'} ] ), remoteSort: true // 服务端排序 }); store.setDefaultSort('Date', 'desc'); // 默认按 Date 列降序排列 [/code] [color=blue]在网上找了一些相关的问题,发现url都是本地服务器处理的。我想要的是向yahoo网站发送参数,经过yahoo服务器处理返回的xml数据,但不知道本地怎样接收。在浏览器里输入http://xml.weather.yahoo.com/forecastrss?p=CHXX0008&u=c,会自动返回一个xml格式的数据给浏览器,现在就是不知道怎么接收这个xml,传递给grid[/color] [size=x-small][color=red]url: 'Services/ArticleService.asmx/GetArticles', // Web Service 地址[/color][/size] [b]问题补充:[/b] 谢谢你的解答,关键是这个servlet又怎么写呢? [b]问题补充:[/b] 首先谢谢你的帮助。调试的时候还是遇到了点问题。搞不清楚什么原因。doPost里面的代码调试出错提示[color=red]Connection timed out[/color][color=red],把其中代码注释掉可以打印hello1,hello2, 不知道问题在哪里? 这里是store和grid代码[/color] [code="java"] var store = new Ext.data.Store({ url:'http://localhost:8080/langsinext/test', //servelet reader: new Ext.data.XmlReader({ record: 'Product', id: 'Catalog' //'ASIN', }, [ {name: 'ProductName', mapping: 'Catalog > ProductName'}, 'Brand', {name: 'Summary', mapping: 'Catalog > ProductName'}, 'NumOfStores', 'PriceFrom', 'Description', // Detail URL is not part of the column model of the grid 'Url' ]) }); var grid = new Ext.grid.GridPanel({ id:'grid-bag', store: store, columns: [ {header: "ProductName", width: 220, dataIndex: 'ProductName', sortable: true}, {header: "Brand", width: 80, dataIndex: 'Brand', sortable: true}, {header: "Summary", width: 300, dataIndex: 'Summary', sortable: true}, {header: "NumOfStores", width: 85, dataIndex: 'NumOfStores', sortable: true}, {header: "PriceFrom", width: 70, dataIndex: 'PriceFrom', sortable: true} ], sm: new Ext.grid.RowSelectionModel({singleSelect: true}), height:300 });[/code] [color=blue]这里是servlet类[/color] [code="java"] package com.wbr.action; import java.io.IOException; import java.io.InputStream; import java.net.URL; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class GetArticlesServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); System.out.println("hello1"); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { URL url = new URL("http://shopping.yahooapis.com/ShoppingService/V3/productSearch?appid=YahooDemo&category=Bags%20%26%20Wallets"); InputStream is = url.openStream(); ServletOutputStream sos = resp.getOutputStream(); byte[] buf = new byte[4096]; while(is.read(buf) != -1) { sos.write(buf,0,buf.length); } sos.close(); System.out.println("hello2"); } } [/code] [b]问题补充:[/b] 那是什么原因呢,直接在浏览器里输入可以。把这个 [color=red]url: 'bagSearch50.xml'[/color],直接替换掉也能得到返回数据。 [b]问题补充:[/b] [code="java"]<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ page import="java.util.*"%> <%@ page import="java.io.*"%> <%@ page import="org.dom4j.*"%> <%@ page import="org.dom4j.io.*"%> <% // String cityCode = request.getParameter("cityCode"); //获取城市代码 SAXReader reader = new SAXReader(); //创建一个SAXReader //使用Reader解析远程服务器RSS信息 /*Document doc = reader.read("http://shopping.yahooapis.com/ShoppingService/V3/productSearch?appid=YahooDemo&category=Bags%20%26%20Wallets&result=15");*/ File file = new File("D:/workspace/langsinext/WebRoot/bagSearch50.xml"); Document doc = reader.read(file); String text = doc.asXML(); // System.out.println(text); response.setContentType("application/xml;charset=UTF-8"); response.getWriter().write(text);//输出天气信息 %>[/code] 非常感谢,我换了个思路,通过上述方法用dom4j解析处理,可以处理本地的文件,现在应该就是那个网站通过这种方式连不上的问题吧。我再摸索摸索。
ext grid显示json数据
<pre name="code" class="c#">刚开始学ext,在网上找了个例子就是数据都不出来</pre> <pre name="code" class="c#">&lt;%--Default.aspx--%&gt;</pre> <pre name="code" class="c#">&lt;html xmlns="http://www.w3.org/1999/xhtml" &gt; &lt;head runat="server"&gt; &lt;title&gt;Ext-Example&lt;/title&gt; &lt;link rel="Stylesheet" type="text/css" href="ext-4.0-pr5/resources/css/ext-all.css" /&gt; &lt;script type="text/javascript" src="ext-4.0-pr5/bootstrap.js"&gt;&lt;/script&gt; &lt;script type="text/javascript"&gt; Ext.onReady(function(){ var proxy=new Ext.data.HttpProxy( { url:'Default2.aspx' } ); //定义reader var reader=new Ext.data.JsonReader( { }, [ {name: 'appeId'}, {name: 'survId'}, {name: 'location'}, {name: 'surveyDate'}, {name: 'surveyTime'}, {name: 'inputUserId'} ] ) //构建Store var store=new Ext.data.Store( { proxy:proxy, reader:reader }); //载入 store.load(); // create the grid var grid = new Ext.grid.GridPanel({ store: store, columns: [ {header: "appeId", width: 60, dataIndex: 'appeId', sortable: true}, {header: "survId", width: 60, dataIndex: 'survId', sortable: true}, {header: "location", width: 60, dataIndex: 'location', sortable: true}, {header: "surveyDate", width: 100, dataIndex: 'surveyDate', sortable: true}, {header: "surveyTime", width: 100, dataIndex: 'surveyTime', sortable: true}, {header: "inputUserId", width:80, dataIndex: 'inputUserId', sortable: true} ], renderTo:'example-grid', width:540, height:200 }); }); &lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;form id="form1" runat="server"&gt; &lt;div id="example-grid"&gt; &lt;/div&gt; &lt;/form&gt; &lt;/body&gt; &lt;/html&gt;</pre> <pre name="code" class="c#">&lt;%--Default2.aspx--%&gt;</pre> <pre name="code" class="c#">&lt;%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %&gt; &lt;%=strJson %&gt;</pre> <pre name="code" class="c#">&lt;%--Default2.aspx.cs--%&gt;</pre> <pre name="code" class="c#">public string strJson;     protected void Page_Load(object sender, EventArgs e)     {         strJson = @"             [                 {'appeId':'1','survId':'1','location':'','surveyDate':'2008-03-14','surveyTime':'12:19:47','inputUserId':'1','inputTime':'2008-03-14 12:21:51','modifyTime':'0000-00-00 00:00:00'},                 {'appeId':'2','survId':'32','location':'','surveyDate':'2008-03-14','surveyTime':'22:43:09','inputUserId':'32','inputTime':'2008-03-14 22:43:37','modifyTime':'0000-00-00 00:00:00'},                 {'appeId':'3','survId':'32','location':'','surveyDate':'2008-03-15','surveyTime':'07:59:33','inputUserId':'32','inputTime':'2008-03-15 08:00:44','modifyTime':'0000-00-00 00:00:00'},                 {'appeId':'4','survId':'1','location':'','surveyDate':'2008-03-15','surveyTime':'10:45:42','inputUserId':'1','inputTime':'2008-03-15 10:46:04','modifyTime':'0000-00-00 00:00:00'},                 {'appeId':'5','survId':'32','location':'','surveyDate':'2008-03-16','surveyTime':'08:04:49','inputUserId':'32','inputTime':'2008-03-16 08:05:26','modifyTime':'0000-00-00 00:00:00'},                 {'appeId':'6','survId':'32','location':'','surveyDate':'2008-03-20','surveyTime':'20:19:01','inputUserId':'32','inputTime':'2008-03-20 20:19:32','modifyTime':'0000-00-00 00:00:00'}             ]";     }</pre> <p> </p>
Ext的XmlReader对同时带有属性和值的XML如何解析?
如下所示的xml,既有属性,又有值: [code="xml"] <?xml version="1.0" encoding="utf-8" ?> <string xmlns="http://nci.com.cn/"> <Message> <Record> <Field name="TagName" type="string">SINUSOID</Field> <Field name="Timestamp" type="timestamp">2009-12-30 1:11:11</Field> <Field name="Value" type="float">77.61374</Field> </Record> </Message> </string> [/code] 我需要解析出来的格式应该是类似下面的结果: [code="js"] field[]=[{'TagName',string,'SINUSOID'}, {'Timestamp',timestamp,'2009-12-30 1:11:11'}, {'Value',float,'77.61374'}]; [/code] 我尝试了两种方式,就是不知道如何正确解析 一,从Record节点开始解析,只能解析到第一个Field 元素(我分析,因为record只有以一个): [code="js"] reader: new Ext.data. XmlReader({record: 'Record'}, [{name:'name', mapping:'Field>@name',type:'string'}, {name:'type',mapping:'Field>@type',type:'string'}, {name:'Field',type:'string'}]) [/code] 二,从Field 开始解析,那么Field本身的值,比如'SINUSOID',怎么表示?: [code="js"] reader: new Ext.data. XmlReader({record: 'Field '}, [{name: 'name', mapping : '@name', type: 'string'}, {name: 'type', mapping : '@type', type: 'string'}, {name: '???', type: 'string'}]) [/code] 第二种方式解析,三行field的属性值都能解析出来,但是我不知道如何表示field本身带的值,请各位帮忙分析一下,谢谢了!
Ext 在 Ajax 中 回调 后台 json 问题
Ext 在 Ajax 中 回调 后台 json 结果没有走success方法而是弹出了一个ie下载窗口名称是txlGroupAdd.action,打开之后是要传到前台的json---{success:true,msg:'添加成功'} { text : "提 交", handler : function() { var txlgourpid=document.getElementById('parorgextid').value; var txlgroupname=panel.getForm().findField('txlgroupname').getValue(); Ext.MessageBox.confirm('提示','您确定要提交吗?',function(btn){ if(btn=='yes'){ panel.getForm().submit({ method: 'POST', url:'txlGroupAdd.action?txlgourpid='+txlgourpid+'&txlgroupname='+txlgroupname, success:function(f,action){ if(action.result.success){ win.hide(); Ext.Msg.alert('消息',action.result.msg,function(){ document.all.indexForm.uType.value = result.data tree.root.reload(); //form.buttons[0].setText('添加'); }); } }, failure:function(){ Ext.Msg.alert('错误',"修改失败"); } }); }else{ return; } }); } } 晕了,解决了。是后台ACTION,编码时候的问题。getResponse().setContentType("text/javascript;charset=UTF-8");改成text/html就好了。求教原因。为什么会出现一个ie下载窗口。
ext tree 如何根据json对象生成节点?
<p>var jsondata = [ { <br>                        id: '111', <br>                        text: '文件夹1_1', </p> <p>                        children: [] <br>                    },{ <br>                        id: '222', <br>                        text: '文件夹1_2', <br>                        children: [] <br>                   } <br>];</p> <p> 我现在有上面这样一个json格式的对象jsondata,有一个ext tree 对象,tree对象有一个根节点,tree对象的根节点默认不展开,当点击加号展开时,将jsondada加载为其下的子节点。简单点说,ext tree 加载节点的方式通常是请求服务器print一个json格式的字符串,或者请求一个.json文件,而我现在是在页面上有一个json格式的对象,如何能让tree读取这个json对象来生成节点,而不请求任何外部url。我设想的思路是,实际上就是动态加载树节点,但动态请求的不是url,可以是一个方法,返回一个json格式的对象,类似上面的jsondata。ext tree对象有没有这样的实现方式啊,或者有其他的途径可以解决我的需求!</p>
EXT:关于TreePanel中json数据的格式问题
loader: new Ext.tree.TreeLoader({ dataUrl:'test.json' }), test.json为如下时正常: [ {id:'01',text:'01',children:[ {id:'01-01',text:'01-01',leaf:true}, {id:'01-02',text:'01-02',children:[ {id:'01-02-01',text:'01-02-01',leaf:true}, {id:'01-02-02',text:'01-02-02',leaf:true} ]}, {id:'01-03',text:'01-03',leaf:true} ]}, {id:'02',text:'02',leaf:true} ] 如果在每个元素都加上属性url='',就不行了,如下: [ {id:'01',url='',text:'01',children:[ {id:'01-01',url='',text:'01-01',leaf:true}, {id:'01-02',url='',text:'01-02',children:[ {id:'01-02-01',url='',text:'01-02-01',leaf:true}, {id:'01-02-02',url='',text:'01-02-02',leaf:true} ]}, {id:'01-03',url='',text:'01-03',leaf:true} ]}, {id:'02',url='',text:'02',leaf:true} ] 请问是什么问题呢? [b]问题补充:[/b] 多谢啊,好郁闷啊,我以为在哪里出错了,原来是格式不对,多谢了。
ext树加载JSON显示不出子节点
使用ext加载树结构时候接受的JSON串如下, ----------------- [{ "id": "10211", "text": "中心", "leve": 1, "children": [{ "id": "13f7b495-9967-1031-9a46-b63f19c07715", "text": "34", "iconCls": "Equipment-on-cls6" }, { "id": "d27b9dd0-c031-4d4c-b366-b7c018626222", "text": "nvr", "iconCls": "Equipment-on-cls6" }, { "id": "6102c69d-9cdd-1031-918c-93e8d367897b", "text": "电视墙", "iconCls": "car" }], "leaf": "false", "iconCls": "UserGroup-icon-cls", "superId": "-1" }] -------------------- 但是界面上却只是显示 中心 节点,下面的children 显示不出来,求指点。。。
struts2 Action返回的json对象无法绑定到Ext grid中
大家好: 后台返回的json对象格式上好像出了点问题,参考成功的例子,json对象应该是以下格式: { total: 2, root : [ { id: 1, firstname: 'Bill', occupation: 'Gardener' }, // a row object { id: 2, firstname: 'Ben' , occupation: 'Horticulturalist' } // another row object ] } 可是我现在的json对象只有root 里面这部分,如下: { { id: 1, firstname: 'Bill', occupation: 'Gardener' }, // a row object { id: 2, firstname: 'Ben' , occupation: 'Horticulturalist' } // another row object } 我从Ext的js文件,struts2的xml文件,后台action,都看了一遍也不知道是什么造成的? Ext相关部分: [code="javaScript"] ds: new Ext.data.Store({ url : 'getCustomersList.action', reader : new Ext.data.JsonReader({totalProperty : "total", root : "root"}, [{name : "customerCode", type : "string"}, {name : "customerName", type : "string"}, {name : "conDist", type : "boolean"}, {name : "supDist", type : "boolean"}, {name : "delDist", type : "boolean"}, {name : "consigneeDist", type : "boolean"}, {name : "dcCompDist", type : "boolean"}, {name : "shippingCompDist", type : "boolean"}, {name : "customerRank", type : "string"}, {name : "creditRank", type : "string"}, {name : "availDist", type : "boolean"}]) }) [/code] struts2 xml相关部分 [code="xml"] <package name="mm" extends="json-default" namespace="/action/mm"> <action name="getCustomersList" class="wms.action.mm.CustomerManagementAction" method="getCustomersList"> <result type="json"> <param name="root">customersInfoList</param> <param name="excludeNullProperties">true</param> </result> </action> </package> [/code] 我的lib是:struts2-json-plugin-2.1.8.1.jar和json-lib-2.1.jar
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
这30个CSS选择器,你必须熟记(上)
关注前端达人,与你共同进步CSS的魅力就是让我们前端工程师像设计师一样进行网页的设计,我们能轻而易举的改变颜色、布局、制作出漂亮的影音效果等等,我们只需要改几行代码,不需...
国产开源API网关项目进入Apache孵化器:APISIX
点击蓝色“程序猿DD”关注我回复“资源”获取独家整理的学习资料!近日,又有一个开源项目加入了这个Java开源界大名鼎鼎的Apache基金会,开始进行孵化器。项目名称:AP...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
编写Spring MVC控制器的14个技巧
本期目录 1.使用@Controller构造型 2.实现控制器接口 3.扩展AbstractController类 4.为处理程序方法指定URL映射 5.为处理程序方法指定HTTP请求方法 6.将请求参数映射到处理程序方法 7.返回模型和视图 8.将对象放入模型 9.处理程序方法中的重定向 10.处理表格提交和表格验证 11.处理文件上传 12.在控制器中自动装配业务类 ...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
求小姐姐抠图竟遭白眼?痛定思痛,我决定用 Python 自力更生!
点击蓝色“Python空间”关注我丫加个“星标”,每天一起快乐的学习大家好,我是 Rocky0429,一个刚恰完午饭,正在用刷网页浪费生命的蒟蒻...一堆堆无聊八卦信息的网页内容慢慢使我的双眼模糊,一个哈欠打出了三斤老泪,就在此时我看到了一张图片:是谁!是谁把我女朋友的照片放出来的!awsl!太好看了叭...等等,那个背景上的一堆鬼画符是什么鬼?!真是看不下去!叔叔婶婶能忍,隔壁老王的三姨妈的四表...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
相关热词 c#处理浮点数 c# 生成字母数字随机数 c# 动态曲线 控件 c# oracle 开发 c#选择字体大小的控件 c# usb 批量传输 c#10进制转8进制 c#转base64 c# 科学计算 c#下拉列表获取串口
立即提问