0
function handleServerResponse() {
       if (xmlhttp.readyState == 4) {
         if(xmlhttp.status == 200) {
           document.getElementById("message").innerHTML=xmlhttp.responseText; 
         }
         else {
            alert("Error during AJAX call. Please try again");
         }
       }

所以上面是 ajax 代码的一部分,它返回一个 HTML 并将其加载到 div 名称消息中。我想做的就是在此之后 5 秒后隐藏 div 消息。我搜索了很多,但没有具体的答案。有人可以帮帮我吗。

4

1 回答 1

1

您只需要setTimeout使用内联函数启动一个来隐藏messagediv。

基本要点:

setTimeout(function() { /* do something */}, 5000); // Timeout in milliseconds

结合您的代码:

function handleServerResponse() {
   if (xmlhttp.readyState == 4) { 
      if(xmlhttp.status == 200) {      
         document.getElementById("message").innerHTML=xmlhttp.responseText;
         document.getElementById("message").style.display = 'block';
         setTimeout(function() {
            document.getElementById("message").style.display = 'none';
         }, 1000 * 5 /* dismiss after 5 seconds */);
      } else { 
         alert("Error during AJAX call. Please try again"); 
      } 
   }   
}
于 2012-12-14T21:49:38.563 回答