ExtJs 3.1 XmlTreeLoader Example Error


Posted in Javascript onFebruary 09, 2010

前言

关键字:ExtJs 3.1 XmlTreeLoader Example Error,XmlTreeLoader 错误,TreePanel Error

ExtJs 3.1的XmlTreeLoader例子折腾了我近一个下午加晚上,官方的例子没有问题,可以加载xml的数据,本地IIS死活不行,也不报错,直接查看官方的代码也是一模一样的,今早意外给让我搜到了,不是在官方,而是在貌似一个韩国的博客里面找到的,致敬一下,本文且做其简单中文"译"本。

原文

http://javarush.com/entry/ExtJS-XmlTreeLoader-Error 

正文

1.

代码位置:Ext3.1\examples\tree\xml-tree-loader.js

2.

注意标红新增代码",requestMethod: 'GET'"!!

/*! 
* Ext JS Library 3.1.0 
* Copyright(c) 2006-2009 Ext JS, LLC 
* licensing@extjs.com 
* http://www.extjs.com/license 
*/ // 
// Extend the XmlTreeLoader to set some custom TreeNode attributes specific to our application: 
// 
Ext.app.BookLoader = Ext.extend(Ext.ux.tree.XmlTreeLoader, { 
processAttributes : function(attr){ 
if(attr.first){ // is it an author node? 
// Set the node text that will show in the tree since our raw data does not include a text attribute: 
attr.text = attr.first + ' ' + attr.last; 
// Author icon, using the gender flag to choose a specific icon: 
attr.iconCls = 'author-' + attr.gender; 
// Override these values for our folder nodes because we are loading all data at once. If we were 
// loading each node asynchronously (the default) we would not want to do this: 
attr.loaded = true; 
attr.expanded = true; 
} 
else if(attr.title){ // is it a book node? 
// Set the node text that will show in the tree since our raw data does not include a text attribute: 
attr.text = attr.title + ' (' + attr.published + ')'; 
// Book icon: 
attr.iconCls = 'book'; 
// Tell the tree this is a leaf node. This could also be passed as an attribute in the original XML, 
// but this example demonstrates that you can control this even when you cannot dictate the format of 
// the incoming source XML: 
attr.leaf = true; 
} 
} 
}); 
Ext.onReady(function(){ 
var detailsText = '<i>Select a book to see more information...</i>'; 
var tpl = new Ext.Template( 
'<h2 class="title">{title}</h2>', 
'<p><b>Published</b>: {published}</p>', 
'<p><b>Synopsis</b>: {innerText}</p>', 
'<p><a href="{url}" target="_blank">Purchase from Amazon</a></p>' 
); 
tpl.compile(); 
new Ext.Panel({ 
title: 'Reading List', 
renderTo: 'tree', 
layout: 'border', 
width: 500, 
height: 500, 
items: [{ 
xtype: 'treepanel', 
id: 'tree-panel', 
region: 'center', 
margins: '2 2 0 2', 
autoScroll: true, 
rootVisible: false, 
root: new Ext.tree.AsyncTreeNode(), 
// Our custom TreeLoader: 
loader: new Ext.app.BookLoader({ 
dataUrl:'xml-tree-data.xml' 
,requestMethod: 'GET' 
}), 
listeners: { 
'render': function(tp){ 
tp.getSelectionModel().on('selectionchange', function(tree, node){ 
var el = Ext.getCmp('details-panel').body; 
if(node && node.leaf){ 
tpl.overwrite(el, node.attributes); 
}else{ 
el.update(detailsText); 
} 
}) 
} 
} 
},{ 
region: 'south', 
title: 'Book Details', 
id: 'details-panel', 
autoScroll: true, 
collapsible: true, 
split: true, 
margins: '0 2 2 2', 
cmargins: '2 2 2 2', 
height: 220, 
html: detailsText 
}] 
}); 
});

结束语

不要放弃和接受一次失败的搜索,不断的尝试改变搜索关键字,哪怕是用词霸翻成英文也得努力去试试,看不懂不要紧,看懂代码就行,代码无国界: )

Javascript 相关文章推荐
基于jQuery的模仿新浪微博时间的组件
Oct 04 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 Javascript
jquery实现html页面 div 假分页有原理有代码
Sep 06 Javascript
jQuery动画出现连续触发、滞后反复执行的解决方法
Jan 28 Javascript
Javascript中replace()小结
Sep 30 Javascript
即将发布的jQuery 3 有哪些新特性
Apr 14 Javascript
JS代码实现百度地图 画圆 删除标注
Oct 12 Javascript
原生JS实现几个常用DOM操作API实例
Jan 19 Javascript
巧用canvas
Jan 21 Javascript
JS实现的邮箱提示补全效果示例
Jan 30 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
Apr 25 Javascript
js正则表达式简单校验方法
Jan 03 Javascript
Javascript 获取链接(url)参数的方法[正则与截取字符串]
Feb 09 #Javascript
一个XML格式数据转换为图表的例子
Feb 09 #Javascript
javascript 解析url的search方法
Feb 09 #Javascript
toString()一个会自动调用的方法
Feb 08 #Javascript
jQuery AJAX回调函数this指向问题
Feb 08 #Javascript
JavaScript Event学习第九章 鼠标事件
Feb 08 #Javascript
JavaScript 类似flash效果的立体图片浏览器
Feb 08 #Javascript
You might like
简单的php数据库操作类代码(增,删,改,查)
2013/04/08 PHP
php使用curl出现Expect:100-continue解决方法
2015/03/03 PHP
php创建多级目录的方法
2015/03/24 PHP
php curl发送请求实例方法
2019/08/01 PHP
javascript 动态table添加colspan\rowspan 参数的方法
2009/07/25 Javascript
拖动布局之保存布局页面cookies篇
2010/10/29 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
jQuery实现图片预加载效果
2015/11/27 Javascript
学习使用grunt来打包JavaScript和CSS程序的教程
2016/01/04 Javascript
基于JS实现新闻列表无缝向上滚动实例代码
2016/01/22 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
AngularJS入门教程中SQL实例详解
2016/07/27 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
AugularJS从入门到实践(必看篇)
2017/07/10 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
JavaScript中数组常见操作技巧
2017/09/01 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
js实现点击按钮复制文本功能
2020/07/20 Javascript
浅谈redux以及react-redux简单实现
2018/08/28 Javascript
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
在Python中操作列表之List.append()方法的使用
2015/05/20 Python
Python冒泡排序注意要点实例详解
2016/09/09 Python
python Django的web开发实例(入门)
2019/07/31 Python
Python3合并两个有序数组代码实例
2020/08/11 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
2020/09/23 Python
Python识别验证码的实现示例
2020/09/30 Python
python安装sklearn模块的方法详解
2020/11/28 Python
python使用yaml 管理selenium元素的示例
2020/12/01 Python
CSS3利用text-shadow属性实现多种效果的文字样式展现方法
2016/08/25 HTML / CSS
HTML5地理定位_动力节点Java学院整理
2017/07/12 HTML / CSS
中国文明网签名寄语
2014/01/18 职场文书
先进员工事迹材料
2014/12/20 职场文书
2015年后勤工作总结范文
2015/04/08 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle
css样式important规则的正确使用方式
2022/06/10 HTML / CSS