读书人

关于EXT的某些话语执行的先后顺序求

发布时间: 2013-03-20 15:25:24 作者: rapoo

关于EXT的某些语句执行的先后顺序,求前辈们帮帮忙
今天,在敲代码的时候,突然遇到了一个很费解的问题。
先看看我的代码。
一下是JS的

Ext.Msg.confirm('提示','确定修改吗?',function(btn){        
if(btn=='yes'){
submitUser(tt);//执行更新
Ext.getCmp("win").show();
Ext.getCmp('win-grid').store.url='json';//执行查询
Ext.getCmp('win-grid').store.load();
Ext.getCmp("userwin").destroy();
}else{

}
},this);

用途是更新数据,并在更新完数据之后更新gridpanel内的信息。
但是在执行的时候,我的后台尽然
Hibernate: 
select
userss0_.USERID as USERID1_,
userss0_.USERNAME as USERNAME1_,
userss0_.USERPWD as USERPWD1_
from
DB_TEST.USERSS userss0_

Hibernate:
update
DB_TEST.USERSS
set
USERNAME=?,
USERPWD=?
where
USERID=4

先运行了查询,然后才更新。
这是怎么回事?我明明是先执行行update的。请高手赐教啊!
[解决办法]
你的修改时ajax异步提交的吧,异步提交的就不好控制了,你的更新操作和查询操作2个请求时间差就是1,2ms,所以哪个请求先到达服务器谁都说不定,取决于网络

将查询操作放到更新操作成功执行的回调里面执行
[解决办法]
更新是应该是异步调用的,你将查询的方法放在更新的回调函数中

读书人网 >Ajax

热点推荐