这两天写 extjs ,想死了,可能年老体弱吧,感觉写不动了。所以来网上找大家。
简单代码如下:
var Checkbox new Ext.form.Checkbox({ //checkbox
fieldLabel:'checkbox',
name:'cb',
checked:true,
boxLabel:'checkbox'
...
实现如这种效果:
我要通过 http请求,由后台返回一个 json 字符串,来显示这个复选框。
然后修改时,我怎么赋值?
var checkboxgroup_tempx = new Ext.form.CheckboxGroup({
id:'myGroup',
xtype: 'checkboxgroup',
fieldLabel: '多选',
itemCls: 'x-check-group-alt',
// Put all controls in a single column with width 100%
columns: 1,
items : [{
layout : 'column',
items: [
{boxLabel:'项目1',name:'item',inputValue:'1'},
{boxLabel:'项目2',name:'item',inputValue:'2'},
{boxLabel:'项目3',name:'item',inputValue:'3'},
{boxLabel:'项目4',name:'item',inputValue:'4'},
{boxLabel:'项目5',name:'item',inputValue:'5'},
{boxLabel:'项目6',name:'item',inputValue:'6'}
]
} ]
});
Ext.data 有几实现的,Ext.data.SimpleStore,等。
悲剧啊,真不知道extjs 怎么通过 url 请求,在网上看了不少例子,都不太是我要的。
谢谢各位。
全部代码如下:
<%@ page contentType="text/html; charset=UTF-8" errorPage="../../../inc/errorpage.jsp"%>
<html>
<head>
<title>新增</title>
<script type="text/javascript">
var field_newspwap_1 = new Ext.form.FieldSet({
title : '用户基本信息',
autoHeight : true,
collapsible : true,
id : 'field_newspwap_1',
items : [{
layout : 'column',
border : false,
baseCls : 'x-plain',
items:[{
columnWidth : .5,
layout : 'form',
baseCls : 'x-plain',
border : false,
defaultType : 'textfield',
defaults : {
anchor : '93%'
},
items: [{
xtype:'textfield',
allowBlank : false,
fieldLabel: '账号',
name:'user.name'
}
]
},{
columnWidth : .5,
layout : 'form',
border : false,
baseCls : 'x-plain',
defaultType : 'textfield',
defaults : {
anchor : '93%'
},
items: [{
xtype:'textfield',
allowBlank : false,
fieldLabel: '密码',
name:'user.password'
}
]
}]
}]
});
var arr=[ [1, '小王'], [2, '小林'],[3, '张三'] ];
var reader = new Ext.data.ArrayReader(
{id: 0},
[
{name: 'value'},
{name: 'key'}
]);
var store=new Ext.data.Store({
reader:reader
});
store.loadData(arr);
var field_newspwap_3 = new Ext.form.FieldSet({
title : '用户角色分配',
autoHeight : true,
collapsible : true,
id : 'field_newspwap_3',
items : [{
layout : 'column',
defaults : {
hideLabels : true,
layout : 'form'
},
items : [{
columnWidth : .01
}, {
columnWidth : .33,
items : [
new Ext.form.ComboBox({ //combobox
fieldLabel:'ComboBox',
resiable:false,
handleHeight :100, //
displayField:'key',
mode: 'local',
store:store //数据储存到这个comboBox
}) ]
}, {
columnWidth : .33,
items : [ new Ext.form.Checkbox({ //checkbox
fieldLabel:'checkbox',
name:'cb',
checked:true,
boxLabel:'checkbox'
}) ]
}, {
columnWidth : .33,
items : [new Ext.form.Checkbox({
boxLabel : '风格',
name : 'userRole.roleIdStr',
inputValue : 12,
checked : true
// disabled : true
})]
}]
}]
});
var frm_newspwap = new Ext.FormPanel({
margins : '5 5 5 5',
id : 'frm_newspwap',
frame : true,
title : '新增用户',
labelAlign : 'left',
labelWidth : 160,
region : 'center',
autoScroll : true,
//bodyStyle:'overflow-x:auto;',
items : [field_newspwap_1,field_newspwap_3],
buttonAlign : 'center',
buttons: [{
text:'保存',
xtype : 'easyButton',
handler:function(){// 保存操作
if (frm_newspwap.form.isValid() == false){
return;
}
frm_newspwap.form.submit({
url:'system/User/save.do',
success:function(form,action){
Ext.MessageBox.alert('提示',action.result.msg);
grid_pag.doLoad(0);
},
scope:this,
failure:function(form,action){
Ext.MessageBox.alert('错误',action.result.msg);
}
})
}
}]
});
new Ext.Panel({
renderTo : 'add_userdiv',
width : Ext.get("add_userdiv").getWidth(),
height : Ext.get("add_userdiv").getHeight(),
border : false,
layout : 'border',
items : [frm_newspwap]
});
</script>
</head>
<body>
<div id="add_userdiv" style="width:100%;height:100%;"></div>
</body>
自己找到答案了。
var ds_duty_select = new Ext.data.Store({
url : 'system/ZoneJson/getComboBoxList.do',
reader : new Ext.data.JsonReader({root : 'root'},[{name : 'id'}, {name : 'name'}])
});
var combo_newspwap_sort = new Ext.form.ComboBox({ //本地下拉框
//xtype : 'combo',
fieldLabel : '权限类别',
emptyText : '请选择...',
//allowBlank : false,
triggerAction : 'all',
store : ds_duty_select,
displayField :'s_name',
hiddenName :'s_name',
valueField : 'value',
mode : 'remote'
});
相关推荐
总结起来,动态读写ExtJS的CheckboxGroup涉及创建CheckboxGroup、读取选中值、设置选中值以及监听变化。通过结合`ext-basex.js`文件,你可以构建出更复杂的交互式表单和应用程序。记住,始终关注用户需求和体验,...
Extjs3.0 中的CheckboxGroup默认不能动态添加item。虽然它继承了Ext.form.Field,但是却类似于容器。 CheckboxGroup配置中的items处理生成一个对应的panel,该处理过程只有一次,所以很难对CheckboxGroup进行动态...
在EXTJS中,`checkboxgroup` 是一个用于创建一组复选框的组件,通常用于让用户在多个选项中进行多选。 在EXTJS中,`checkboxgroup` 的配置项包括但不限于: 1. `xtype`: 这个属性定义了组件的类型,对于`checkbox...
Extjs动态Grid的生成 htm
在本文中,我们将深入探讨如何使用ExtJS框架在前端动态生成表格,并结合后端数据进行展示。ExtJS是一个强大的JavaScript库,专用于构建富客户端Web应用程序,尤其在创建交互式用户界面方面表现突出。动态生成表格是...
创建Checkbox Tree时,需要在TreePanel的配置项中指定`useCheckboxes`为`true`。此外,还可以通过`checked`属性来控制节点的默认选中状态,以及`enable三态`来启用三态复选(选中、未选中、部分选中)。 4. **数据...
我们首先从标题"ExtJs动态grid的生成"开始,了解动态生成Grid的基本概念和实现方法。 动态生成Grid意味着在运行时根据需求创建和更新Grid组件,而不是在应用初始化时静态定义。这种灵活性允许开发者更好地响应数据...
动态表头是ExtJS中一个高级特性,它允许开发者根据需要在运行时动态地创建和修改表格的列结构。这在处理数据展示和操作时具有很大的灵活性,尤其在数据字段不确定或需要自定义的情况下非常实用。 标题“extjs 实现...
标题中的“ExtJS Desktop相关 动态生成开始菜单 多级菜单的快捷方式”涉及到的是一个使用ExtJS框架实现的桌面应用模拟系统,它能够创建类似Windows操作系统的开始菜单,并支持多级菜单结构来快速访问应用程序或功能...
extjs动态生成model、store、panel;sql拼接等多种技术难点
- **配置表单行为**:为FormPanel设置action属性,指定提交的URL,或者在提交事件中动态设置。 - **监听提交事件**:使用`form.submit()`方法触发表单提交,传入一个包含回调函数的对象,处理成功和失败的情况。 ...
标题中的“EXTJS动态树支持checkbox全选”指的是EXTJS中树组件的一个特性,即在树形结构中添加复选框(checkbox)功能,并支持全选和全取消选中操作。这样的功能对于需要用户进行多项选择的场景非常有用,比如文件...
在 ExtJS 4.2 中实现动态生成 Toolbar,以满足 gridPanel 中动态生成带按钮及查询条件的工具栏的需求。本文将详细介绍如何实现动态生成 Toolbar,包括视图层、 Toolbar.js 和后台调用创建工具栏的方法。 视图层 在...
重写 代码如下: //解决checkboxgroup回填数据问题 Ext.override(Ext.form.BasicForm,{ findField : function(id){ var field = this.items.get(id); if(!field){ this.items.each(function(f){ if(f.isXType(...
代码如下: Ext.override(Ext.form.CheckboxGroup,{ setValueForItem : function(val){ //多个选项值以逗号分开的 val = “,”+val+”,” this.items.each(function(item) { if (val.indexOf(item.inputValue) > -1) ...
2. **创建CheckboxGroup**:基于获取到的信息,创建一个CheckboxGroup,并为每一列添加一个Checkbox。 3. **监听Checkbox事件**:为每个Checkbox添加监听器,当Checkbox的状态发生改变时,更新GridPanel中对应列的...
在"动态添加表单"这个主题中,我们将深入探讨如何在ExtJS中实现表单的动态创建和管理。 首先,我们要理解表单(Form)在ExtJS中的基本概念。表单是数据输入和验证的核心组件,可以包含各种字段类型,如文本框、下拉...
在提供的实例源码中,我们看到的是如何在 EXTJS 中修改颜色的示例,具体涉及到 EXTJS 的 FormPanel 和 ComboBox 组件,以及自定义事件处理。 1. **FormPanel**: - `Ext.form.FormPanel` 是 EXTJS 中用于创建表单...
- `CheckboxGroup`:复选框组,允许用户从多个复选框中选择一项或多项。 - `ComboBox`:下拉列表框,提供一个可展开的选项列表供用户选择。 - `DateField`:时间框,让用户选择日期或时间。 - `HtmlEditor`:富...