1.二个控件相邻在同一列布局
{
columnWidth:.38,
layout:'form',
items:[{ layout : 'table',
items:[{
layout:'form',
items :[{
xtype:'datefield',
fieldLabel:'投诉日期',
editable:false,
id:'complaintDate1Search',
name:'complaintDate1Search',
format:'Y-m-d',
width:90
}]
},{
layout:'form',
labelWidth:30,
items :[{
xtype:'datefield',
fieldLabel:'至',
editable:false,
id:'complaintDate2Search',
name:'complaintDate2Search',
format:'Y-m-d',
width:90
}]
}]
}]
}
?2.?复选框选中及取值
items : [{xtype:'checkbox',
boxLabel: "手机短信",
name:'sms',
id:'sms',
inputValue:'1'}]
?
注:设置inputValue值时,取选中时取值为1,未选中则取值为null,
????? setValue('1')时则自动会选中该复选框。
?
3.?Ext表单参数提交转换为对象
// 表单验证成功
if(editForm.getForm().isValid()){
//将表单中的信息进行json编码,提交到后台会自动绑定对象,
//表单中的字段Id需与后台对象的属性名称一致。
inputConditions = Ext.util.JSON.encode(
editForm.getForm().getValues(false));
Ext.Msg.confirm('确认', '是否保存信息?',function(ds){
if(ds=='yes'){
myMask = new Ext.LoadMask(Ext.getBody(), {
msg : "正在提交表单信息,请稍后..."
});
myMask.show();
Ext.getCmp('saveGroup').setDisabled(true);
editForm.getForm().doAction('submit', {
url : SMIS.CTX+ '/discipline/mechanism/
SmisInstitutionController/saveSmisInstitution.do',
method : 'POST',
params:{
conditions : inputConditions
},
success : function(form, action) {
if (action.result.success) {
Ext.Msg.alert('执行成功', action.result.msg);
myMask.hide();
doCancel();//刷新
}
},
failure : function(form, action) {
Ext.getCmp('saveGroup').setDisabled(false);
myMask.hide();
Ext.Msg.alert('执行失败',action.result.msg);
//doCancel();
}
});
}
});
}
?
后台部分代码:
@RequestMapping(value = "/saveSmisInstitution.do",method=RequestMethod.POST)
public void saveSmisInstitution(SmisInstitution smisInstitution,
HttpServletRequest request,HttpServletResponse response,
HttpSession session) throws IOException{
// 参数对象smisInstitution 与前台提交的conditions参数自动绑定
}
?
4.Ext中Store成功加载完再进行操作,由于是异步操作,经常获取store数据时未加载完毕
//加载数据combo
regieOrgCombo.getStore().load({callback:function(r,options,success){
if(success){
// 具体操作
}
}});
?