ExtJS的树(tree)无法在多浏览器上显示,除IE外,怎么解决?
我写了一个JSP页面,页面主体代码是
JScript code
<script type="text/javascript">
Ext.onReady(function(){
var Tree = Ext.tree;
//New TreePanel
var tree = new Tree.TreePanel({
el:'tree-div',
autoScroll:true,
animate:true,
enableDD:true,
containerScroll: true,
loader: new Tree.TreeLoader({
dataUrl:'<%=basePath %>menus!querySinoInte.action'
})
});
//Set Root Node
var root = new Tree.AsyncTreeNode({
text: '选择申请对象',
draggable:false,
id:'source'
});
tree.setRootNode(root);
// render the tree
tree.render();
root.expand();
});
</script>
</script>
用到的ExtJS版本是3.2
这段代码是从ExtJS自带的expamle中摘出来的,
除了将获取数据的方式我该了,返回的是一个JSON对象
dataUrl:'<%=basePath %>menus!querySinoInte.action'
其他全部一样.
这段代码我在IE9 chrome Safari Opera 上都测试了,除了IE9能正常显示外,其他都浏览器都不行。
论坛应该有人做过extjs tree的程序,不知道你们有没有这方面的问题,怎么解决的?讨个答案。
------解决方案--------------------应该只是JS报错吧。。检测一下js
------解决方案--------------------js的兼容性吧,用firebug检查一下是否js有地方报错了
------解决方案--------------------
在3.3里EXJJS的tree还是有很多的bug,但是依然可以有办法让tree运行正常,
楼主是适应的3。2的,在我没有试验的情况下给你些建议吧。。
1,你没有看到节点生成,那么你确认过HTML是否生成。
2,JSON返回的字符串中转化成的JSON对象会影响到tree的生成的效果。
3,其他各种手段去找出问题的根本原因