小さなWebアプリケーションを開発しています。サーバー側のコードはほぼ完成しましたが、クライアント側の JavaScript に苦労しています。
毎秒更新されるhtmlファイルがあります。このファイルは完全に静的であり、ログの目的でのみ使用します。
アイデアはほとんど同じことを行うことですが、クライアント側で自動更新が行われます。
そのために、ajax を使用したデータベース ポーリングを使用したいと考えています。
ここで最初のバージョンを実装しました。これは、同じ html ファイルを単純に出力し、毎秒リロードすることになっています。
問題は、JavaScript コンソールのクライアント側にエラーが表示されていなくても、更新されないことです。ファイルが正しく読み込まれ、div が更新されない理由が見当たらないため、ファイルが見つかりました。
これが私のコードです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<!-- Using Google CDN -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script>
(function worker() {
$.ajax({
url : 'http://jlengrand.pythonanywhere.com/static/leader.html',
success: function(data) {
$('.text').html(data);
},
complete: function() {
setTimeout(worker, 1000);
}
});
})();
</script>
</head>
<body>
<div class="text">
To be loaded <br />
</div>
</body>
</html>
ローカルで試してみましたが(ファイルは小さいですが)、うまくいきました。
ファイル全体をリロードするのは賢明ではないことはわかっていますが、JavaScript で開発するのはこれが初めてなので、段階的にビルドしたいと考えています。
私は何が欠けていますか?