1

我在 div (RTab) 中显示用户定义的搜索结果,该搜索结果在查询开始之前一直隐藏。我希望在单击搜索按钮 (cmdSub) 后立即显示结果 div,然后发出查询。AutoProc 是填充结果 div 的 PEAR AJAX 函数。

问题是查询完成后 div 滑动打开,而我希望它在查询发送到服务器之前滑动打开。

    $("#cmdSub").click(function(){
       $('#RTab').show('slide', { direction: 'right' }, 100);
       AutoProc('UsrQuery');
    });

我尝试了很多方法,例如强制 UI 重绘、将我的 AJAX 调用绑定到 RTab 的 show 事件以及通过将显示更改为无并返回阻止来确保 hasLayout 为真。似乎没有什么影响操作的顺序。它总是运行查询然后显示 div!非常令人沮丧!

我哪里错了?

编辑以显示最终更正的行:

    $('#RTab').show('slide', { direction: 'right',complete: function(){AutoProc('Query');} }, 100);
4

1 回答 1

1

看起来您想在动画完成后运行查询函数,因此将您的函数附加到complete事件上:

$("#cmdSub").click(function(){
   $('#RTab').show({
     complete: function(){
                 AutoProc('UsrQuery');
               },
     duration: 100
   });       
});

虽然我不知道任何“方向”属性$.show()......

于 2013-01-21T01:21:49.910 回答