问题一:
jsonString = "{totalCount:"+this.list.size()+"success:true"+",root:"+jsonArray.toString()+"}";
var _jsonReader = new Ext.data.JsonReader( {
root : 'root',
totalProperty : 'totalCount',
idProperty : 'id',
remoteSort : false,
successProperty : '@success'
}, [{....................................
url : 'save.html',
method:'post',
[color=red] success: function(form, action){
Ext.Msg.alert('success', action.result.info);
ds.load();
editForm.reset();
editWindow.hide();
},
failure : function(form, action) {
Ext.Msg.alert('修改失败', '添加级别失败!');
}[/color]为什么红色这段代码不能执行
问题二:
//--定义编辑窗体
if(!editWindow)
{
editWindow = new Ext.Window({
el: 'edit_win',
title:'编辑记录',
width: 650,
height: 360,
closable: false,
closeAction: 'hide',
resizable: false,
items: editForm
});
editWindow.show(Ext.get('editDataButton'));
editWindow.items.itemAt(0).getForm().loadRecord(record);
}
editForm = new Ext.FormPanel( {
title: 'title',
frame: true,
width: 300,
labelAlign: 'right',
labelWidth: 60,
defaultType: 'textfield',
defaults: {
width: 200,
allowBlank: false
},
defaultType : 'textfield',
items : [{
id:'ids',
name : 'model.id'
},{
fieldLabel : '名字',
name : 'model.name'
},{
fieldLabel : 'itemName',
name : 'model.itemName'
},{
fieldLabel : 'itemValue',
name : 'model.itemValue'
},new Ext.form.TextArea( {
fieldLabel : 'remark',
name : 'model.remark'
}
)],
buttons : [{
text: '保存',
handler: function() {
if (editForm.form.isValid()) {
editForm.form.doAction('submit',{
url : 'save.html',
method:'post',
success: function(form, action){
Ext.Msg.alert('success', action.result.info);
ds.load();
editForm.reset();
editWindow.hide();
},
failure : function(form, action) {
Ext.Msg.alert('修改失败', '添加级别失败!');
}
});
}
}
},{
text : '取消',
handler : function() {
editWindow.hide();
}}
]
});
[color=red]选择一行,点击修改,第一次可以弹出editWindow窗口,第二次点击就不能弹出该窗口,只有再刷新页面才能点击修改弹出窗口,我想不刷新出能弹出该窗口,怎样实现[/color]
[code="js"] success: function(form, action){
alert('test');
/*Ext.Msg.alert('success', action.result.info);
ds.load();
editForm.reset();
editWindow.hide();*/
},
failure : function(form, action) {
alert('test2');
//Ext.Msg.alert('修改失败', '添加级别失败!'); [/code]
按道理,怎么着也会进入一个.如果请求成功了就进入success,请求失败就进入failure
没有执行,只能说你压根就没有执行请求动作
第二道题
editWindow.hide(); 你这是隐藏了,我觉得还是destroy吧,每次点击的时候重新创建
closeAction: 'close',
第一个问题,
请问你用的是form.submit来提交的么?如果是的话,那两个方法肯定有一个会执行的啊
如果你用的是Ext.Ajax.request()来提交的话,那么你那两个函数的参数是错误的,所以不会执行
朋友,问题要自动关闭啦,结分哦