ExtJs 3.2 复选框数据项动态加载
来源:互联网 发布:自动关注软件源码 编辑:程序博客网 时间:2024/06/05 04:40
var myCheckboxItems = [];
var myCheckboxGroup = new Ext.form.CheckboxGroup({
xtype : 'checkboxgroup',
columns : 6,
items : myCheckboxItems
});;
var form = new Ext.FormPanel({
frame : true,
border : false,
autoHeight : true,
labelAlign : "right",
labelWidth : 60,
items : [{
layout : "form",
border : false,
columnWidth : .33,
items : [myCheckboxGroup]
}]
});
Ext.Ajax.request({//请求数据
method : 'POST',
async : true,
url : contextPath
+ '/attencePersonWorkScore/attencePersonWorkScore!getWorkScoreData.do',
params : {
// "attenceWorkScore.id" : attenceWorkScoreId
},
success : function(response, options) {
var data = Ext.decode(response.responseText);
var ids = [];//id值
var names = [];//名字
ids = (data.ids).split(',');
names = (data.names).split(',');
for (var i = 0; i < ids.length; i++) {
var checkboxObj = {
boxLabel : names[i],
name : 'cbLable' + ids[i],
id : 'cb' + ids[i],
inputValue : ids[i],
padding : '0 20px 5px 0',
checked : false
};
}
form.doLayout(); // 重新调整版面布局
window.show();
for (var j = 0; j < dayIds.length; j++) {//赋值初值
Ext.getCmp('cb' + dayIds[j]).setValue(true);
}
},
failure : function(response, options) {
Ext.Msg.alert("错误", "加载数据失败!");
}
});
var window = new Ext.Window({
title : "班次",
buttonAlign : 'center',
openFullScreen : true,// 全屏展示
autoHeight : true,
closeAction : 'hide',
closable : true,
border : false,
constrain : true,
modal : true,// 窗口弹出后屏蔽掉其他组件
plain : true,// 对窗口内容部分进行美化
constrainHeader : true,
layout : 'fit',
items : [form]
// items : [WorkScore_addForm]
,
buttonAlign : "center",
buttons : [sureBtn, closeBtn],
resizable : true,
autoScroll : true,
// bodyStyle : "padding-right:20px;",
listeners : {
}
});
var sureBtn = new Ext.Button({//提交按钮
text : '确定',
iconCls : "accept",
handler : function() {
for (var i = 0; i < myCheckboxGroup.items.length; i++) {//获取选中的值
if (myCheckboxGroup.items.itemAt(i).checked) {
workScore.push(myCheckboxGroup.items.itemAt(i).inputValue);
}
}
if (workScore.length == 0) {
Ext.Msg.alert("提示", "请选择班次!");
return;
}
Ext.Ajax.request({
method : 'POST',
url : contextPath
+ '/attencePersonWorkScore/attencePersonWorkScore!updateWorkSocre.do',
params : {
"workScoreId" : scoreId,
"scoreDay" : scoreDay,
"scoreDayValue" : workScore.join(",")
},
success : function(response, options) {
var json = Ext.decode(response.responseText);
Ext.Msg.alert("提示", json.data);
grid.store.reload();
WorkScore_addWindow.hide();
myCheckboxItems = [];
myCheckboxGroup.reset();
},
failure : function(response, options) {
Ext.Msg.alert("错误", "加载数据失败!");
}
});
}
var myCheckboxGroup = new Ext.form.CheckboxGroup({
xtype : 'checkboxgroup',
columns : 6,
items : myCheckboxItems
});;
var form = new Ext.FormPanel({
frame : true,
border : false,
autoHeight : true,
labelAlign : "right",
labelWidth : 60,
items : [{
layout : "form",
border : false,
columnWidth : .33,
items : [myCheckboxGroup]
}]
});
Ext.Ajax.request({//请求数据
method : 'POST',
async : true,
url : contextPath
+ '/attencePersonWorkScore/attencePersonWorkScore!getWorkScoreData.do',
params : {
// "attenceWorkScore.id" : attenceWorkScoreId
},
success : function(response, options) {
var data = Ext.decode(response.responseText);
var ids = [];//id值
var names = [];//名字
ids = (data.ids).split(',');
names = (data.names).split(',');
for (var i = 0; i < ids.length; i++) {
var checkboxObj = {
boxLabel : names[i],
name : 'cbLable' + ids[i],
id : 'cb' + ids[i],
inputValue : ids[i],
padding : '0 20px 5px 0',
checked : false
};
}
form.doLayout(); // 重新调整版面布局
window.show();
for (var j = 0; j < dayIds.length; j++) {//赋值初值
Ext.getCmp('cb' + dayIds[j]).setValue(true);
}
},
failure : function(response, options) {
Ext.Msg.alert("错误", "加载数据失败!");
}
});
var window = new Ext.Window({
title : "班次",
buttonAlign : 'center',
openFullScreen : true,// 全屏展示
autoHeight : true,
closeAction : 'hide',
closable : true,
border : false,
constrain : true,
modal : true,// 窗口弹出后屏蔽掉其他组件
plain : true,// 对窗口内容部分进行美化
constrainHeader : true,
layout : 'fit',
items : [form]
// items : [WorkScore_addForm]
,
buttonAlign : "center",
buttons : [sureBtn, closeBtn],
resizable : true,
autoScroll : true,
// bodyStyle : "padding-right:20px;",
listeners : {
}
});
var sureBtn = new Ext.Button({//提交按钮
text : '确定',
iconCls : "accept",
handler : function() {
for (var i = 0; i < myCheckboxGroup.items.length; i++) {//获取选中的值
if (myCheckboxGroup.items.itemAt(i).checked) {
workScore.push(myCheckboxGroup.items.itemAt(i).inputValue);
}
}
if (workScore.length == 0) {
Ext.Msg.alert("提示", "请选择班次!");
return;
}
Ext.Ajax.request({
method : 'POST',
url : contextPath
+ '/attencePersonWorkScore/attencePersonWorkScore!updateWorkSocre.do',
params : {
"workScoreId" : scoreId,
"scoreDay" : scoreDay,
"scoreDayValue" : workScore.join(",")
},
success : function(response, options) {
var json = Ext.decode(response.responseText);
Ext.Msg.alert("提示", json.data);
grid.store.reload();
WorkScore_addWindow.hide();
myCheckboxItems = [];
myCheckboxGroup.reset();
},
failure : function(response, options) {
Ext.Msg.alert("错误", "加载数据失败!");
}
});
}
});
首先创建好checkbox和checkboxgroup然后再创建formpanel,再将之前创建好的checkboxgroup作为formpanel的items,这样,就没有问题了所以这种方法解决了问题..
阅读全文
2 0
- ExtJs 3.2 复选框数据项动态加载
- 动态加载 dojoTree.带复选框
- ExtJs 入门教程二十二[动态复选框:RemoteCheckboxGroup]
- ExtJS复选框tree
- extjs动态和静态加载下拉框
- Extjs combox 动态加载
- extjs 动态加载
- Extjs动态加载树
- ExtJs TreePanel 动态加载
- 通达OA表单动态加载下拉菜单数据项
- JQuery easyUI和HTML动态加载combox数据项
- ajax动态加载下拉框、单选框、复选框
- ajax动态加载下拉框、单选框、复选框
- extjs复选框依次排列
- Extjs 复选框下拉列表
- extjs grid去掉复选框
- extjs4 如何动态加载带有复选框的tree
- 投诉举报项目中动态加载单选框、复选框
- [NOIP2011][分治]选择客栈
- java使用Filter过滤器对Response返回值进行修改
- Java API学习之十二个包
- opencv3.2在vs2015开发环境搭建+cmake3.8编译生成opencv x86版本库
- Postgres的搭建配置和创建
- ExtJs 3.2 复选框数据项动态加载
- 【leetcode】第10题 Regular Expression Matching 题目+解析+代码
- NIO简单理解(二,传统IO与NIO模型粗析)
- 九度1207:质因数的个数
- Java网络编程:TCP的socket编程
- mysql数据库分库分表策略的具体实现方案
- am3352 项目记录
- EasyStream系列11之录制directshow视频
- socket通信简介及实践