首页 > 编程知识 正文

关于extjs创建页面的信息

时间:2023-12-06 11:46:57 阅读:312499 作者:AXEE

本文目录一览:

  • 1、如何在extjs中打开一个新的界面,原先的界面还存在。
  • 2、Extjs页面创建了一个窗口代码如下,请教大家如何通过itemId 来直接访问最下面的这个'保存'按钮
  • 3、extjs怎么将子窗口中选中的数据传入到父页面中
  • 4、ExtJs里页面初始化函数是什么?
  • 5、myeclipse7.5下如何创建extjs

如何在extjs中打开一个新的界面,原先的界面还存在。

添加单击事件就可以了

listeners : {

'click' : tree_itemclick

}

-------------------------------------

function tree_itemclick (node, event) {

var tabId = "tab-" + node.id;

var tabTitle = node.text;

var tabLink = node.attributes.url;

//alert(tabLink);

currentPage = tabId;

var centerPanel = Ext.getCmp("mainpanel");

var tab = centerPanel.getComponent(tabId);

var subMainId = "tab-" + node.id + "-main";

if (!node.isLeaf()){

// 为叶子节点时,点击进入链接

event.stopEvent();

return;

}

if (!tab) { //判断MainTabPanel中是否存在这个页面,如果不存在将创建一个

tab = centerPanel

.add(new Ext.Panel(

{

id : tabId,

title : tabTitle,

autoScroll : true,

iconCls : "tabIconCss",

layout : "fit", //填充布局,它不会让load进来的东西改变大小

border : false,

closable : true,

//closeAction : 'hide',

items : [ {

showMask : true,

maskMsg : '正在加载数据,请稍等...',

scripts : true,

html : "iframe scrolling='auto' frameborder='0' width='100%' height='100%' src='"

+ tabLink + "' /iframe"

} ]

}));

}else {

centerpanel.setActiveTab(tab);

}

centerPanel.setActiveTab(tab); //将焦点指向我点击节点打开的页面

};

Extjs页面创建了一个窗口代码如下,请教大家如何通过itemId 来直接访问最下面的这个'保存'按钮

你直接说要先测试是因为win.getComponent('btn_save')取不到控件是吧?

这是因为buttons里的控件挂靠到的不是win,而是toolbar里,也就是这个按钮的容器不是win而是toolbar

所以正确的取法应该是win.queryById('btn_save')

var win = Ext.create("Ext.window.Window", {

title: "卡牌编辑",

width: 360,

height: 340,

items: {

xtype: "form",

margin: 5,

border: false,

     items: []

      },

buttons: [

{ text: "保存",

itemId : 'btn_save' }

],

renderTo:Ext.getBody()

}

);

win.show();

Ext.defer(function(){

win.queryById('btn_save').setDisabled(true);

},5000);

extjs怎么将子窗口中选中的数据传入到父页面中

实际上extjs创建的窗体就是div框,只是浮动于其他元素的上层,他实际上和主页面(按钮所在页面)是在同一个页面,不存在父窗体和子窗体的关系

当然,如果你的窗体中有iframe框就另当别论了

做法是在 按钮所在页 定义一个全局变量,在窗体中的组件选择了数据后,把这些数据放到那个全局变量里边,然后在其他地方调用这个变量就行了

数据多的话,全局变量就定义成数组或对象

如果是iframe的话

现在父窗体定义一个全局变量

然在在子窗体数据选择后把值赋给父窗体的全局变量中

window.parent.param = 子窗体变量;

然后在父窗体的其他地方就可以使用 param 这个变量了

ExtJs里页面初始化函数是什么?

在extjs里面的对象都有一个创建时间的问题,你在onReady直接获取是不行的,必须要等到这个对象(即组件)创建完成之后(在ext中这个叫做render)才能取到,你可以在写onReady之前定义一个全局变量var node;然后在你的tree1的定义方法里加一个监听函数:afterRender:function(tree){

node=tree.getNodeById('0');//将全局变量赋值

}

myeclipse7.5下如何创建extjs

直接把需要用到的Extjs库文件放到你所建的WebRoot项目下,然后页面引用ext-all.css、ext-base.js、ext-all.js,基本的extjs就可以用了 每个版本的extjs需要导入的文件有所差异

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。