Ⅰ Extjs动态加载树,增删查该,自动刷新
不需要用ajax
是增加的一个树节点,n表示被选中的树节点
单点一个增加按钮,弹出一个窗体中含有一个需要添加节点的信息的formpanel
添加信息好提交
需要注意的是创建treepanel的时候有一个属性是指定其自动加载指定的url
具体是哪个属性忘了,
closable : true,
useArrows : true,
autoScroll : true,
animate : true,
//enableDD : true,
containerScroll : true,
border : false,
// auto create TreeLoader
dataUrl : 'org!treeList?org.id=1',
下面是增加树节点的提交
Ext.getCmp('orgAddFormPanel').getForm().submit({ url : 'org!add', waitMsg : 加载中...', success : function(form, action) { orgAddWindow.close(); if(n.leaf) { n.leaf = false; } n.expand(false, true); n.appendChild(action.result.org); } });
Ⅱ Extjs中的combobox的动态加载问题
大概过程是定义store里面存放你需要的东西,然后把store放在combobox里面.
给你个例子,希望能够帮到你.
//定义的store
var examStore = new Ext.data.Store({
model: 'Exam',
pageSize: 10, // items per page
proxy: new Ext.data.HttpProxy({
url: 'ExamHandler.ashx?method=getAll',
reader: {
type: 'json',
root: 'data',
totalProperty: 'total'
}
}),
listeners:{
load:function(){
var combo = form.getForm().findField("examId");
combo.setValue(combo.getValue());
}
}
});
examStore.load();
//combox 在form里面的写法
{
fieldLabel: '选择试卷',
xtype: 'combo',
msgTarget: 'side',
editable: false,
triggerAction: 'all',
lazyRender: true,
mode: 'local',
store: examStore,
valueField: 'id',
displayField: 'examName',
name: 'examId'
},
Ⅲ ExtJS 动态增加与删除items,动态设置textField可见与否
Ext.getCmp('textFieldId').setVisible(false);
Ext.getCmp('textFieldId').getEl().up('.x-form-item').setDisplayed(false);
/**
*动态设置fieldLabel的值与
*动态设置是否可见
*/
if (bFlag){
mNextDate.el.parent().parent().parent().first().dom.innerHTML = '下次年审日期';
mReviewDate.el.parent().parent().parent().first().dom.innerHTML = '年审日期';
mReviewProject.setVisible(true);
mReviewProject.getEl().up('.x-form-item').setDisplayed(true);
mReviewContent.setVisible(true);
mReviewContent.getEl().up('.x-form-item').setDisplayed(true);
mReviewState.setVisible(false);
mReviewState.getEl().up('.x-form-item').setDisplayed(false);
}else{
mNextDate.el.parent().parent().parent().first().dom.innerHTML = '结束时间';
mReviewDate.el.parent().parent().parent().first().dom.innerHTML = '起始时间';
mReviewProject.setVisible(false);
mReviewProject.getEl().up('.x-form-item').setDisplayed(false);
mReviewContent.setVisible(false);
mReviewContent.getEl().up('.x-form-item').setDisplayed(false);
mReviewState.setVisible(true);
mReviewState.getEl().up('.x-form-item').setDisplayed(true);
}
Ⅳ extjs 动态添加控件怎么删除
extjs删除动态添加的控件的方法是利用remove函数。
函数原型定义:remove( Component/String component, [Boolean autoDestroy]) : Void
作用:从指定的回容器中移除组件答。删除之前触发事件beforeremove,则触发该组件已被删除后remove事件。
参数说明:
component : 将被删除的组件/字符串组件引用或者id。
autoDestroy : 布尔(可选)True可以自动调用删除组件的Ext.Component.destroy功能。默认为这个容器的autoDestroy配置值
Ⅳ Extjs CheckboxGroup动态添加checkBox
我建议你用Ext.form.FieldSet
如果非要用CheckboxGroup的话
最简单的方法是重新new一个,因为他没有add方法
动态添加没研究过..
Ⅵ Extjs如何动态加载Extjs脚本
1、首先,需要先创建一个基本可用的 ExtJS 模板, 这个很简单, 如下所示:
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="http://localhost/ext-4/resources/css/ext-all.css" />
<script type="text/javascript" src="http://localhost/ext-4/ext-debug.js"></script>
</head>
<body>
</body>
</html>
2、需要引用的脚本是 ExtJS 根目录下的 ext-debug.js , 不是 ext-all-debug.js, 这个文件非常小, 只有几百K , 当让这个只是最基本的 ExtJS 组件, 不包括任何的界面功能。
3、配置 Ext.Loader 启用动态加载;
4、ExtJS 中的动态加载是由 Ext.Loader 来完成的, 默认不启用动态加载, 所以接下来需要做的事配置 Ext.Loader 启用动态加载, 在上面模板的 body 标签内添加如下代码:
<script type="text/javascript">
Ext.onReady(function() {
Ext.Loader.setConfig({
enabled : true,
disableCaching: false,
paths : {
Ext : '/ext-4/src'
}
});
});
</script>
注意:上面的代码启用了动态加载, 禁用了浏览器缓存, 以及指定了 ExtJS 的所部署的路径。
Ⅶ extjs复选框怎么动态取值和赋值
var sm0 = new Ext.grid.CheckboxSelectionModel();
sm0.handleMouseDown = Ext.emptyFn;//主要是这句
Ⅷ 动态设置extjs文本框的事件
<!doctypehtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>Extjs4.2demo</title>
<linkrel="stylesheet"href="../resources/css/ext-all.css">
<scriptsrc="../bootstrap.js"></script>
<script>
.onReady(function(){
Ext.create('Ext.form.FormPanel',{
width:250,
bodyPadding:'550',
fieldDefaults:{
labelWidth:75
},
items:[{
xtype:'fieldset',
title:'information',
defaultType:'textfield',
layout:'anchor',
defaults:{
anchor:'100%'
},
items:[{
fieldLabel:'First',
name:'first',
listeners:{
change:function(field,nv,ov,opts){
varlastfield=this.getBubbleParent().items.last();
lastfield.$ml&&lastfield.un('focus',lastfield.$ml);
lastfield.$ml=function(){
Ext.Msg.alert('结果',Ext.String.format('第一个字段的值为:"{0}",最后一个字段的值为:"{1}"',nv,this.value));
};
//设置最后一个textfield的listeners
lastfield.on('change',lastfield.$ml,lastfield);
}
}
},{
fieldLabel:'Second',
name:'second'
},{
fieldLabel:'Last',
name:'last'
}]
}],
renderTo:Ext.getBody()
});
});
</script>
</head>
<body>
</body>
</html>