2017-11-30 4 views
1

5秒ごとに別のページからのHTMLリンクのセットでページを更新したいが、それは動作しません。ブラウザで手動で更新するとページが更新されます。私は助けを必要としてくださいajaxでページを更新できません

あなたはsetInterval

と同様に、パラメータとしてコールバック関数を渡す必要があり

<div id="sto"></div> 


<script> 
    function upd(){ 
     $('#sto').html(''); 
     $.ajax({ 
      url:base_url+'process/ajax/get3.php', 
      cache: false, 
      async: false, 
      dataType: 'html', 
      success: function(resp) 
      { 

       //$('#sto').html(resp); 
       $('#sto').append(resp); 

      } 
     }) 
    } 
    setInterval(upd(), 5000) 
</script> 


PHP (get3.php - links generated from db) 

<ul class="chat-history" id="group_history_2"> 
    <li><span class="user">Test Patient</span><p>ddd</p><span class="time">04:10</span></li> 
    <li><span class="user">Test Patient222</span><p>ddd</p><span class="time">04:10</span></li> 
    <li><span class="user">Test Patient333</span><p>ddd</p><span class="time">04:10</span></li> 
</ul> 
+0

'console.log(resp)'なら何を得ていますか? – Eddie

+0

コンソールはhtmlを一度だけ出力し、続行しません – Mysterio4

+0

下記の私の答えを確認してください。 – Eddie

答えて

3

HTMLページ:

setInterval(upd, 5000); 
upd(); /*Add this so that you will call the ajax immediately after loading and no need to wait for 5seconds*/ 

あなたはあなたのコードに()を削除する必要があります。

+0

の可能な複製はい、コンソールでループします。ありがとうございます。リフレッシュ後もブラウザに表示されません。 – Mysterio4

+0

もう更新する必要はありません。あなたはそれがajaxを呼び出すように5秒待たなければならない – Eddie

+0

あなたはすぐに 'upd();によってそれを呼び出すことができます – Eddie

関連する問題