Ext.Panel的autoLoad属性或load()方法说明

在Panel或者其子类的autoLoad属性或load(Object/String/Function)方法会调用Ext.Updater 的update(Object options)方法来加载指定的url资源。

如果指定的url资源中含有javascript脚本,并且我们希望执行此脚本,而不是作为响应文本。这时我们就需要在options中指定scripts属性值为true。这样加载的资源就是javascript脚本执行后的资源信息了。

比如下来代码,一个panel在加载一个BoxComponent.html的页面,这个页面有一个红色背景、id='myDiv'的层,然后有一段javascript脚本将改变'myDiv'层的大小。

创建panel脚本:

<script type="text/javascript">

Ext.onReady(function() {

    var myPanel = new Ext.Panel({

       id:'myPanel',

       renderTo:Ext.getBody(),

       title:'我的面板',     

       collapsible:true,

       floating:true,

       buttons:[{text:'加载新内容',handler:function(){Ext.getCmp('myPanel').load({url:'BoxComponent.html',scripts:true});}},{text:'返回'}],

       width:400,

       height:300

    });

    myPanel.getEl().center();

});

</script>

BoxComponent.html:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>ExtBoxComponent</title>

<meta http-equiv="content-type" content="text/html; charset=gb2312">

<link rel="stylesheet" type="text/css" href="../ext/resources/css/ext-all.css">

<script type="text/javascript" src="../ext/ext-base-debug.js"></script>

<script type="text/javascript" src="../ext/ext-all-debug.js"></script>

<script type="text/javascript" src="../ext/ext-lang-zh_CN.js"></script>

<script type="text/javascript">

Ext.onReady(function() {

    var myComponent = new Ext.BoxComponent({

       id:'myCmp',

       el:'myDiv',

       style:'background-color:red;position:absolute;',

       pageX:10,

       pageY:10,

       resetSize:function(w,h){

           this.autoHeight=false;

           this.autoWidth=false;

           this.setWidth(w);

           this.setHeight(h);

       }

    });

   

    myComponent.render();

    if(confirm("将组件大小设置成800*600的大小?")){

       myComponent.resetSize(800,600);

    }

});

</script>

</head>

<body>

<div id="myDiv">hello world!</div>

</body>

</html>

 运行效果图如下:

显示panel:

Ext.Panel的autoLoad属性或load()方法说明 - artsn@126 - 牛奶小布丁
 
先将 scripts属性去掉,然后点击“加载新内容”按钮: 
Ext.Panel的autoLoad属性或load()方法说明 - artsn@126 - 牛奶小布丁
再将scripts:true加上, 然后点击“加载新内容”按钮:
Ext.Panel的autoLoad属性或load()方法说明 - artsn@126 - 牛奶小布丁
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值