function aaa() {
document.getElementById("tt").value = "数据保存中,请稍后...";
//这里的方法调用AJAX去操作数据,做了延时,大概要10秒的处理时间。
document.getElementById("tt").value = "数据保存成功";
}
为什么“tt”的值只能最后显示“数据保存成功”,而“数据保存中,请稍后”无法显示出来...像下面这样加个alert却又可以了。function aaa() {
document.getElementById("tt").value = "数据保存中,请稍后...";
alert("aaaaaaa");
//这里的方法调用AJAX去操作数据,做了延时,大概要10秒的处理时间。
document.getElementById("tt").value = "数据保存成功";
}

解决方案 »

  1.   

    function aaa() {
    document.getElementById("tt").value = "数据保存中,请稍后...";
    //这里的方法调用AJAX去操作数据,做了延时,大概要10秒的处理时间。document.getElementById("tt").value = "数据保存成功";
    }这怎么延时啊? javascript又没有线程睡眠document.getElementById("tt").value = "数据保存成功";
    除非你把这句写在 ajax的回调函数里,那样的话,"数据保存中"就会显示
    至于那个 alert("xxxx")
    只要你不按确定,整个javascript程序执行流程都将被挂起停止,直到按下alert的确定
      

  2.   

    你的ajax操作应该是异步的对吗?
    如果是异步的,那么document.getElementById("tt").value = "数据保存成功";这条语句不会等到ajax操作陈功才执行,而是直接执行。那当然无法显示前面的数据保存中,请稍后...,因为你后面的直接把它给覆盖了。。
    正确的写法应该是把document.getElementById("tt").value = "数据保存成功";这条语句写到ajax操作成功的回调函数之中
      

  3.   


    document.getElementById("tt").value = "数据保存中,请稍后...";
    setTimeout("document.getElementById('tt').value = '数据保存成功';",10000);这样试试 。alert了 要等确定后才执行下面的代码 。
      

  4.   

    document.getElementById('tt').value = '数据保存成功';
    这个一般是ajax成功后再显示吧.
      

  5.   


    function aaa() {
        document.getElementById("tt").value = "数据保存中,请稍后...";
        //这里的方法调用AJAX去操作数据,做了延时,大概要10秒的处理时间。
        //一般来说,ajax都是异步的,虽然你的操作需要10秒钟,但是ajax并不会等待,直接就继续运行下一步了
        //所以,"数据保存中,请稍后..."并不是没有显示,而是刚显示,马上又被改成"数据保存成功"了
        //所以,如果在这中间加一句alert就能看到了
        document.getElementById("tt").value = "数据保存成功";
    }
    解决的办法,就是使用回调函数,比如在jquery中
    $.ajax(
    {//其他参数
      success:function(){
        document.getElementById("tt").value = "数据保存成功";
      }
    }
    );
      

  6.   

    都写到ajax里吧
    如:$.ajax({ 
    type:"...",
    url:"...",
    data:"...",
    beforeSend: function(){ 
    // "数据保存中,请稍后..."
    }, 
    success: function(){ 
    // "数据保存成功" 

    // ... 
    });
      

  7.   

    解决办法
    1、 设置ajax 同步请求
    2、把 document.getElementById("tt").value = "数据保存成功"; 写到回调函数内