shjanken 2009-02-04 09:27
浏览 320
已采纳

Extjs的初级问题,但是就是搞不定。真让人着急上火呀

点击树节点在主面板里使用load方法调用一个jsp页面。被调用的jsp页面里面有个gridpanel。单独访问这个被调用的页面可以正常显示gridpanel,但是在主页面中无论如何也无法显示。。。

代码如下
主页面的代码


<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
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%>">

    &lt;title&gt;My JSP 'index.jsp' starting page&lt;/title&gt;
    &lt;meta http-equiv="pragma" content="no-cache"&gt;
    &lt;meta http-equiv="cache-control" content="no-cache"&gt;
    &lt;meta http-equiv="expires" content="0"&gt;
    &lt;meta http-equiv="keywords" content="keyword1,keyword2,keyword3"&gt;
    &lt;meta http-equiv="description" content="This is my page"&gt;
    &lt;link href="extjs/resources/css/ext-all.css" rel="stylesheet"
        type="text/css" /&gt;
    &lt;script type="text/javascript" src="extjs/adapter/ext/ext-base.js"&gt;&lt;/script&gt;
    &lt;script type="text/javascript" src="extjs/ext-all-debug.js"&gt;&lt;/script&gt;
    &lt;!--
&lt;link rel="stylesheet" type="text/css" href="styles.css"&gt;
--&gt;
&lt;/head&gt;

&lt;body&gt;
    &lt;script type="text/javascript"&gt;
    Ext.onReady(function(){
    Ext.BLANK_IMAGE_URL = 'extjs/resources/images/default/s.gif';       
    // 配置树形菜单
    var root = new Ext.tree.TreeNode();

// var wareConsoles = new Ext.tree.TreeNode({
// text : '进库 / 出库操作'
//
// });

    var inWareHouse = new Ext.tree.TreeNode({
                text : '进库操作',
                url:'whconsoler.jsp'
            });

    var outWareHouse = new Ext.tree.TreeNode({
                text : '出库操作'
            });

// wareConsoles.appendChild(inWareHouse);
// wareConsoles.appendChild(outWareHouse);

    var wareManager = new Ext.tree.TreeNode({
                text : '仓库信息管理'
            });

    root.appendChild(inWareHouse);
    root.appendChild(outWareHouse);
    root.appendChild(wareManager);

    var menuPanel = new Ext.tree.TreePanel({
                border : false,
                root : root,
                rootVisible : false,
                hrefTarget : 'mainPanel',
                listeners : {
                    click : function(node, e) {
                        mainPanel.load({
                                url : node.attributes.url,
                                script : true,
                                callback:function(){
                                    mainPanel.setTitle(node.text);
                                }
                            });
                    }
                }
            });

    // 配置主面板
    new Ext.Viewport({
                layout : 'border',
                items : [// 添加菜单面板
                {
                            title : '系统功能菜单',
                            region : 'west',
                            split : true,
                            width : 250,
                            items : menuPanel
                        }, // 添加住面板
                        {
                            frame : false,
                            region : 'center',
                            id : 'mainPanel',
                            title:'系统说明',
                            autoLoad:'about.html',
                        }]
            });
        var mainPanel = Ext.getCmp('mainPanel');
    });
&lt;/script&gt;
&lt;/body&gt;

</html>



被调用的页面代码如下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>inwarehouse</title>
<link href="extjs/resources/css/ext-all.css" rel="stylesheet"
type="text/css" />
<script type="text/javascript" src="extjs/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="extjs/ext-all-debug.js"></script>
</head>

<body>
<script type="text/javascript">
Ext.onReady(function(){
//创建表格数据
var data = [[1,'张三',29],[2,'李四',30],[3,'王五',27],[4,'赵六',28]];
//创建记录类型Person,mapping值为字段值对应数组中数据的索引位置
var Person = Ext.data.Record.create([
{name: 'personId',mapping: 0},
{name: 'personName',mapping: 1},
{name: 'personAge',mapping: 2}
]);
//创建Grid表格组件
var grid = new Ext.grid.GridPanel({
title : 'Ext.grid.RowSelectionModel',
applyTo : 'grid-div',
width:330,
height:180,
frame:true,
viewConfig : {
autoFill : true
},
tbar : [{
text : '查询选择结果',
handler : function(){
var msg = '';
var cell = grid.getSelectionModel().each(function(rec){
msg = msg + rec.get('personName') + '\n';
});
alert(msg);
}
}],
sm : new Ext.grid.RowSelectionModel(),//设置行选择模式
store: new Ext.data.Store({//配置数据集
reader: new Ext.data.ArrayReader({id:0},Person),
data: data
}),
columns: [//配置表格列
{header: "id", width: 30, dataIndex: 'personId'},
{header: "姓名", width: 80, dataIndex: 'personName'},
{header: "年龄", width: 80, dataIndex: 'personAge'}
]
})
});
</script>
<div id="grid-div" style="width: 100%;height: 100%;border;1px #CCC dashed">
</div>
</body>
</html>

  • 写回答

1条回答 默认 最新

  • 马勒格彼得 2009-02-04 10:04
    关注

    scripts: true,

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3