function toggle(id,count)
{
if($("#"+count).val()!="aa")
{
$.ajax({ url: "purchasepayfaudit.do?method=itemList&purchaseno="+id, context: document.body, success: function(msg){
        $("*[class="+id+"]").html(msg);
         window.setTimeout(sToggle,5000);(这里)
         }});
}

$("#"+count).attr("value","aa");

$("*[class="+id+"]").slideToggle("slow");
}怎么让程序停止几秒啊 ,我是想让ajax加载完信息后在执行下面的 用setTimeout()的话 该语句下面的函数还会继续执行,把下面的方sToggle 不行 ,因为if 里面的内容只要求执行一次 ,不知道说的名不明白 ,就是想问下有什么函数是直接暂停的 

解决方案 »

  1.   

    补充下 就是不要异步 执行setTimeout的时候主线程能停止
      

  2.   

    js里没有暂停执行吧。
    还真没遇到过你可以把下面的代码写在success里试试。
      

  3.   


    function toggle(id,count)
    {
    if($("#"+count).val()!="aa")
    {
    $.ajax({ url: "purchasepayfaudit.do?method=itemList&purchaseno="+id, context: document.body, success: function(msg){
      $("*[class="+id+"]").html(msg);
      window.setTimeout(sToggle,5000);(这里)
    $("#"+count).attr("value","aa");$("*[class="+id+"]").slideToggle("slow");
      }});
    }
    if($("#"+count).val()=="aa")//这里加上判断不就行了
    {
    $("#"+count).attr("value","aa");$("*[class="+id+"]").slideToggle("slow");
    }
    }
      

  4.   

    请参考
    http://www.w3school.com.cn/tiy/t.asp?f=jseg_timing_stop
    <html>
    <head>
    <script type="text/javascript">
    var c=0
    var t
    function timedCount()
    {
    document.getElementById('txt').value=c
    c=c+1
    t=setTimeout("timedCount()",1000)
    }function stopCount()
    {
    clearTimeout(t)
    }
    </script>
    </head><body><form>
    <input type="button" value="开始计时!" onClick="timedCount()">
    <input type="text" id="txt">
    <input type="button" value="停止计时!" onClick="stopCount()">
    </form><p>请点击上面的“开始计时”按钮来启动计时器。输入框会一直进行计时,从 0 开始。点击“停止计时”按钮可以终止计时。</p></body></html>
      

  5.   

    LZ 去看看幫助文檔吧其實就加一個參數
    async:false
      

  6.   

    能说清楚点吗,setTimeout 好像没你说的那个,
      

  7.   

    不是判断的问题,我就是想实现功能类似setTimeout 只是不是异步,类似sleep(500)这样
      

  8.   

    你下面不就两行代码要执行的?
    $("#"+count).attr("value","aa");
    $("*[class="+id+"]").slideToggle("slow");
    把放到success:function里不就行了
    $("*[class="+id+"]").html(msg);
    $("#"+count).attr("value","aa");
    $("*[class="+id+"]").slideToggle("slow");