1、增加提交:
buttons: [{
text: '保存',
handler:function(){
if (Docnum_Add_Form.getForm().isValid()) { //判断提交的数据是否符合正则表达式
Docnum_Add_Form.getForm().submit({
waitTitle: '提示', //标题
waitMsg: '正在保存数据请稍后...', //提示信息
url: '../../ashx/car/Tra_Docnum_add.ashx',
method: "POST",
success: function (form, action) {
//成功后
mystore.load();
Docnum_Add_Win.hide();
return;
/* 方法一
mystore.insert(0,[{}]); //插入空记录
var _rec=mystore.getAt(0);
_rec.set('Docnum', form.findField('Docnum').value);
_rec.commit();
*/
/* 方法二
var _rec = Ext.create('MyData',{Dconum:form.findField('Docnum').value});
_rec.insert(0,_rec);
*/
},
failure: function (form, action) {
var errorObj = Ext.JSON.decode(action.response.responseText);
Ext.Msg.show({
title: '错误提示',
msg: errorObj.msg,
buttons: Ext.Msg.OK,
icon: Ext.Msg.ERROR
});
}
})
}
else {
alert('出错!输入数据格式出错 !');
}
}
}, {
text: '取消',
handler: function () { Docnum_Add_Win.hide(); }
}]
2、删除部分
var btnDeleteAction = Ext.create('Ext.Action', {
id:'BtnDelete',
iconCls: 'deleteicon',
text: '作废',
disabled: false,
minWidth: 60,
handler: function (widget, event) {
var rec = mygrid.getSelectionModel().getSelection()[0];
var _docnum = rec.get('Docnum');
Ext.Msg.show({
title: "提示", msg: "确认要作废单号<"+_docnum+">,是吗?", width: 300, icon: Ext.MessageBox.QUESTION
, buttons: Ext.MessageBox.YESNO,
fn: function(btn) {
if (btn === "yes") {
//首先删除后台信息
Ext.Ajax.request({
url:"/ashx/car/Tra_Docnum_del.ashx",
method:"POST",
params:{Docnum:rec.get('Docnum')},
success:function(response, opts){
var _index = mystore.indexOf(rec);
mystore.removeAt(_index);
// mystore.removeAt(rec.index); 此为原方式,不能用的。
},
failure:function(response, opts){
var _text = response.responseText;
Ext.Msg.alert("提 示",_text);
}
});
}
}
})
}
});
注意点:由于前台删除,没有刷新,当删除下一条数据时,还是用mystore.removeAt(rec.index) 方式,就会错误删除了其他记录,因为mystore没有重新编索引,所以你取到的还是上次加载时的索引,所以要用查找记录,得到当前实际索引再删除才可,这问题开始没注意,EXT也有考虑不全的地方,算不算Bug不知道。
3、更改部分
buttons: [{
text: '保存',
handler:function(){
if (Docnum_Upd_Form.getForm().isValid()) { //判断提交的数据是否符合正则表达式
Docnum_Upd_Form.getForm().submit({
waitTitle: '提示', //标题
waitMsg: '正在保存数据请稍后...', //提示信息
url: '../../ashx/car/Tra_Docnum_Upd.ashx',
method: "POST",
success: function (form, action) {
//成功后
//mystore.load();
//return;
var flag = action.result.success;
if (flag ) {
var rec = mystore.getAt(_rec.index);
rec.set('Docnum', form.findField('Docnum').value);
//rec.set('UseDate', form.findField('UseDate').value); //这种取法为对象,由于不是日期类型所以不能用
rec.set('UseDate', form.findField('UseDate').rawValue); //直接取文本框中的数据,日期型式时直接取文本
rec.set('DeptName', form.findField('DeptName').value);
rec.set('CarType', form.findField('CarType').value);
rec.set('ToWhere', form.findField('ToWhere').value);
rec.set('CreateUser', form.findField('CreateUser').value);
rec.set('CreateDate', form.findField('CreateDate').value);
rec.set('Checked', form.findField('Checked').value);
//rec.set('CheckUser', form.findField('CheckUser').value);
//rec.set('CheckDate', form.findField('CheckDate').value);
rec.set('PlanMan', form.findField('PlanMan').value);
rec.set('PlanTon', form.findField('PlanTon').value);
rec.set('UseRemark', form.findField('UseRemark').value);
rec.set('MantelNo', form.findField('MantelNo').value);
rec.commit(); //去除单元格的
Docnum_Upd_Win.hide();
}
},
failure: function (form, action) {
var errorObj = Ext.JSON.decode(action.response.responseText);
Ext.Msg.show({
title: '错误提示',
msg: errorObj.msg,
buttons: Ext.Msg.OK,
icon: Ext.Msg.ERROR
});
}
})
}
else {
alert('出错!输入数据格式出错 !');
}
}
}, {
text: '取消',
handler: function () { Docnum_Upd_Win.hide(); }
}]