2017-01-11 4 views
0

最新のコメントが失われることがある点を除いて、チャットページは正常に機能します。これはブラウザのキャッシュ問題のようです。jqueryのチャットリフレッシュエラー

フォーム/ POSTでは、LOG.txtファイルに新しいコメントが追加され、表示されます。 2秒間隔でjavascriptはLOG.txtをリフレッシュします。これは、95%の時間でうまく動作します。

しかし、時には新しいコメントが表示されて消え、明らかに以前の(キャッシュされた?)バージョンから更新されたJavaScriptから消えてしまいます。

ブラウザを再起動する(キャッシュをクリアする)と、通常問題が解決されます。ウインドウをしばらくアイドルにしておくと(通常10分?)、通常はウィンドウが起き始める。

このリフレッシュエラーを回避する方法はありますか?ご協力ありがとうございます。

AUTO-REFRESH

<head> 
<script src="http://code.jquery.com/jquery-3.1.1.js"></script> 
<script type="text/javascript"> 
    function doRefresh(){ 
     $("#show").load("LOG.txt"); 
    } 
    $(function() { 
     setInterval(doRefresh, 2000); 
    }); 
</script> 
</head> 

NEW COMMENTにADD

<body> 
<form id="box" method="post" onKeyPress="return checkSubmit(event)"> 
    <input name="new" autofocus="autofocus" type="text" > 
</form> 
<div id ="show"><?php include 'LOG.txt'; ?> 
</body> 
+0

解決方法:signalrの使い方を学んでください。がんばろう。 –

+0

LOG.txt呼び出しに日付スタンプクエリを追加することで問題は解決します。これを使用する - 'code'function doRefresh(){ \t $("#show ")load(" LOG.txt "、" f "+(new Date())。valueOf()); } 'code' これを置き換える - ' code'function doRefresh(){ \t $( "#ショー")負荷( "LOG.TXT")。 } 'code' – Andante88

答えて

0

キャッシュされたコンテンツは、問題がある場合は、jQueryのキャッシュを無効にします。

$.ajaxSetup ({ 
    cache: false 
}); 

はTXTつもりであることをいくつかの日hugheします。

関連する問題