找回密码
 立即注册

QQ登录

只需一步,快速开始

littlebent

中级会员

11

主题

29

帖子

922

积分

中级会员

积分
922
littlebent
中级会员   /  发表于:2015-12-23 15:09  /   查看:4136  /  回复:3
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>spreadJS1</title>
<link rel="stylesheet" href="webbuilder/controls/ext/resources/css/ext-all.css" type="text/css">
<link rel="stylesheet" href="webbuilder/css/style.css" type="text/css">
<link rel="stylesheet" href="webbuilder/css/gcspread.sheets.8.40.20151.0.css" type="text/css">
<script type="text/javascript" src="webbuilder/script/locale/wb-lang-zh_CN.js"></script>
<script type="text/javascript" src="webbuilder/controls/ext/ext-all.js"></script>
<script type="text/javascript" src="webbuilder/controls/ext/locale/ext-lang-zh_CN.js"></script>
<script type="text/javascript" src="webbuilder/script/wb.js"></script>
<script type="text/javascript" src="webbuilder/script/spreadJS/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="webbuilder/script/spreadJS/gcspread.sheets.all.8.40.20151.0.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="javascript">

        window.onload = function () {
                       
        var spread = new GcSpread.Sheets.Spread(document.getElementById('ss'), { sheetCount: 1 });
        // get spread object
        // var spread = GcSpread.Sheets.findControl(document.getElementById('ss'));
    };
        
</script>
</head>
<body>
<script language="javascript" type="text/javascript">
Ext.onReady(function(){
Wb.initialize(null,480);
Wd.panel1=new Ext.panel.Panel({
id:"panel1",html:"<div class=\"sample-turtorial\" style=\"float:left; width:70%; height:400px;\">\n\n    <div id=\"ss\" style=\"width:100%; height:400px;border: 1px solid gray;\">\n    <\/div>\n  <\/div>\n\n\n\n",renderTo:Ext.getBody()
});
});
</script>
</body>
</html>
编译出来的源码是这样的,不能正常显示效果,是为什么呢?
好像都没找到ss呢,是不是要改成panel的id才行啊?

3 个回复

倒序浏览
CCKan
银牌会员   /  发表于:2015-12-23 15:48:00
沙发
我对 ExtJS 不了解,我猜测原因可能是 window.onload 会先触发, ExtJS 在后面才把对应的 DOM 挂到浏览器上,所以在 window.onload 中找不到 ss
回复 使用道具 举报
littlebent
中级会员   /  发表于:2015-12-23 15:51:00
板凳
是的,
var spread = new GcSpread.Sheets.Spread(document.getElementById('ss'), { sheetCount: 1 });
这一段要写在panel的afferrender里面,要在panel输出<div id="ss" ...>完成后执行才能读到ss
回复 使用道具 举报
Helen
高级会员   /  发表于:2015-12-23 17:15:00
地板
回复 3楼littlebent的帖子

您好!
所以请在能读到ss之后再初始化Spread。
如果您的问题已经解决,请给本贴评分。谢谢!

Satisfy_5_1.gif
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部