extJS checkbox 如何动态生成CheckBox? 做一个权限分配页面,要求做成复选框,EXTJS怎样实现动态添加 Checkbox,譬如从后台数据库权限表中读出多少个权限,在前台就显示多少个,再有如何才能和数据库中的表绑定,进行权限添加呀!请高人们指点迷津! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给你参考个我的代码,我是用来动态插入input的,你可以类似的做var Items_Add = function() { Model_Add.formPanel.add(Model_Items); Model_Add.window.render(); } var Model_Items = { layout:'column', items:[{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"标示",//文本框标题 xtype:"textfield",//表单文本框 name:"names[]", blankText:'不能为空', allowBlank:false, width:100 }] },{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"字段名",//文本框标题 xtype:"textfield",//表单文本框 name:"params[]", blankText:'不能为空', allowBlank:false, width:100 }] },{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"输入类型",//文本框标题 xtype:"textfield",//表单文本框 name:"types[]", emptyText:'例如:textfiled,textarea,timefield', blankText:'不能为空', allowBlank:false, width:100 }] }] }; JSP:<script>// 假设权限放在list数组中<% for(int i=0;i<list.size();i++){ %> new Ext.form.Checkbox({ renderTo : 'chk', width : 200, checked : false });<% } %></script> 补充下根据数据库有多少个就循环出多少个Model_Edit.formPanel = new Ext.form.FormPanel ({ id:'Model_Edit.formPanel', frame:true, width: 750 }); forEach(ModelJson,function(value, key){ Model_Edit.formPanel.add({ layout:'column', items:[{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"标示",//文本框标题 xtype:"textfield",//表单文本框 name:"names[]", value:value.name, blankText:'不能为空', allowBlank:false, width:100 }] },{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"字段名",//文本框标题 xtype:"textfield",//表单文本框 name:"params[]", value:key, blankText:'不能为空', allowBlank:false, width:100 }] },{ columnWidth:.3, layout: 'form', items: [{ fieldLabel:"输入类型",//文本框标题 xtype:"textfield",//表单文本框 name:"types[]", emptyText:'例如:textfiled,textarea,timefield', blankText:'不能为空', value:value.type, allowBlank:false, width:100 }] }] }) }) 老大,我要的不是输入文本框,是复选框的,文本输入的我会做,就是没有遇到过这种复选的,还要数据库有多少权限,就出多少选项,我是晕这块呀! var individual = [{ bodyStyle: 'padding-right:5px;', items: { xtype: 'fieldset', title: '角色设置', autoHeight: true, defaultType: 'checkbox', // each item will be a checkbox items: [{ xtype: 'field', name: 'YHMC', fieldLabel: '用户名称' }, { fieldLabel: '用户角色', boxLabel: '管理员', name: 'ADMIN' }, { fieldLabel: '', labelSeparator: '', boxLabel: '审批', name: 'APPROVE' }, { checked: false, fieldLabel: '', labelSeparator: '', boxLabel: '编辑', name: 'EDIT' }, { checked: false, fieldLabel: '', labelSeparator: '', boxLabel: '浏览', name: 'BROSE' }] },这是写死的,我想要个动态的。 Ext.Ajax.request({ url: 'Default3.aspx', success: function(response, opts) { items = eval(response.responseText); createWin(items); }, failure: function(response, opts) { } }); function createWin(items) { var win = new Ext.Window({ width: 640, height: 480, items: { xtype: 'checkboxgroup', fieldLabel: 'Auto Layout', items: items } }) win.show(); }后台方法,具体的发送的字符串你可以自己根据dataset去拼接Response.Clear(); string s = "[{boxLabel: 'Item 1', name: 'cb-auto-1'},{boxLabel: 'Item 2', name: 'cb-auto-2', checked: true},{boxLabel: 'Item 3', name: 'cb-auto-3', checked: true}]"; Response.Write(s); Response.End(); 有解决吗我也要用EXTJS写权限方面的东西,动态生成checkbox 能否传授一点经验.. js 正则匹配问题 请大侠帮忙看看哪里出问题?老是报错:”缺少对象“ 求一个将每段开头和结尾的所有空格去掉的正则函数 取得域名的这个js该怎么写? 求一个就像CSDN中的算分程序.(谢谢) 如何用javascript判断今天是星期几 怎样在javascript中定义和使用checkbox数组啊? 见过这么多级的菜单吗?希望对大家有启发. eWebEditor错误 图片地址想改成绝对引用的,但是改不成功 AJAX成功后的值与现在的对比 jqury的滚动效果失效
var Items_Add = function()
{
Model_Add.formPanel.add(Model_Items);
Model_Add.window.render();
}
var Model_Items = {
layout:'column',
items:[{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"标示",//文本框标题
xtype:"textfield",//表单文本框
name:"names[]",
blankText:'不能为空',
allowBlank:false,
width:100
}]
},{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"字段名",//文本框标题
xtype:"textfield",//表单文本框
name:"params[]",
blankText:'不能为空',
allowBlank:false,
width:100
}]
},{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"输入类型",//文本框标题
xtype:"textfield",//表单文本框
name:"types[]",
emptyText:'例如:textfiled,textarea,timefield',
blankText:'不能为空',
allowBlank:false,
width:100
}]
}]
};
// 假设权限放在list数组中
<% for(int i=0;i<list.size();i++){ %>
new Ext.form.Checkbox({
renderTo : 'chk',
width : 200,
checked : false
});
<% } %>
</script>
Model_Edit.formPanel = new Ext.form.FormPanel
({
id:'Model_Edit.formPanel',
frame:true,
width: 750
});
forEach(ModelJson,function(value, key){
Model_Edit.formPanel.add({
layout:'column',
items:[{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"标示",//文本框标题
xtype:"textfield",//表单文本框
name:"names[]",
value:value.name,
blankText:'不能为空',
allowBlank:false,
width:100
}]
},{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"字段名",//文本框标题
xtype:"textfield",//表单文本框
name:"params[]",
value:key,
blankText:'不能为空',
allowBlank:false,
width:100
}]
},{
columnWidth:.3,
layout: 'form',
items: [{
fieldLabel:"输入类型",//文本框标题
xtype:"textfield",//表单文本框
name:"types[]",
emptyText:'例如:textfiled,textarea,timefield',
blankText:'不能为空',
value:value.type,
allowBlank:false,
width:100
}]
}]
})
})
var individual = [{
bodyStyle: 'padding-right:5px;',
items: {
xtype: 'fieldset',
title: '角色设置',
autoHeight: true,
defaultType: 'checkbox', // each item will be a checkbox
items: [{
xtype: 'field',
name: 'YHMC',
fieldLabel: '用户名称'
}, {
fieldLabel: '用户角色',
boxLabel: '管理员',
name: 'ADMIN'
}, {
fieldLabel: '',
labelSeparator: '',
boxLabel: '审批',
name: 'APPROVE'
}, {
checked: false,
fieldLabel: '',
labelSeparator: '',
boxLabel: '编辑',
name: 'EDIT'
}, {
checked: false,
fieldLabel: '',
labelSeparator: '',
boxLabel: '浏览',
name: 'BROSE'
}]
},
这是写死的,我想要个动态的。
Ext.Ajax.request({
url: 'Default3.aspx',
success: function(response, opts) { items = eval(response.responseText);
createWin(items);
},
failure: function(response, opts) { }
}); function createWin(items) {
var win = new Ext.Window({
width: 640,
height: 480,
items:
{
xtype: 'checkboxgroup',
fieldLabel: 'Auto Layout',
items: items
} })
win.show();
}
后台方法,具体的发送的字符串你可以自己根据dataset去拼接Response.Clear();
string s = "[{boxLabel: 'Item 1', name: 'cb-auto-1'},{boxLabel: 'Item 2', name: 'cb-auto-2', checked: true},{boxLabel: 'Item 3', name: 'cb-auto-3', checked: true}]";
Response.Write(s);
Response.End();
我也要用EXTJS写权限方面的东西,动态生成checkbox 能否传授一点经验..