我在div(RTab)中显示用户定义搜索的结果,该查询在查询启动之前一直隐藏。我希望在单击搜索按钮(cmdSub)后立即显示结果div,然后发出查询。 AutoProc是一个PEAR AJAX函数,用于填充结果div。
问题是在查询完成后div会打开,而我希望在查询发送到服务器之前将其滑开。
$("#cmdSub").click(function(){
$('#RTab').show('slide', { direction: 'right' }, 100);
AutoProc('UsrQuery');
});
我尝试过很多东西,比如强制重绘UI,将我的AJAX调用绑定到RTab的show事件,并通过将display更改为none并返回block来确保hasLayout为true。似乎没有任何影响操作的顺序。它始终运行查询然后显示div!很沮丧!
我哪里错了?
编辑以显示最终更正的行:
$('#RTab').show('slide', { direction: 'right',complete: function(){AutoProc('Query');} }, 100);
答案 0 :(得分:1)
看起来你想在动画完成后运行你的查询函数,所以在complete
事件上附加你的函数:
$("#cmdSub").click(function(){
$('#RTab').show({
complete: function(){
AutoProc('UsrQuery');
},
duration: 100
});
});
我不知道$.show()
中的任何“方向”属性,但是......