
AJAXでのリロードに関して
教えて下さい。
あるページを一定の時間でリロードしたいと考えています。
その際に、javascript を使用すれば、以下のような記述で何分か単位で
自動リロードが可能ですが、それをAJAXにて実現するにはどのように記述
すれば良いでしょうか???
***** javascript の場合
<TITLE>ページをリロードする方法</TITLE>
<SCRIPT TYPE="text/javascript">
<!--
var timer = "300000";//指定ミリ秒単位
function ReloadAddr(){
window.location.reload();//ページをリロード
}
setTimeout(ReloadAddr, timer);
//-->
</SCRIPT>
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
私はあまりライブラリーを使わず自分でプログラムを書く方なので、一通りの機能を書いていますが、ざっくり書くと以下のような感じです。
そもそもAjaxとはどんな物かお分かりだという前提ですが、
createXmlHttpRequest関数はJavascript上でのHTTPクライアントを生成する関数です。
ブラウザによって処理の仕方が多少違うので、だいたいのブラウザに対応できるようにしたものです。
getAjaxData関数はAjaxを使ってサーバからデータをGETメソッドで取ってきて、<div id="ajax"></div>の間に書き込む処理をします。
そして、setInterval() で1秒に一回getAjaxData関数を呼び出しています。
setTimeout() だと一回限りなので、繰り返し一定間隔でコンテンツを書き換えるなら setInterval() がいいと思います。
<html>
<head>
<script type="text/javascript">
<!--
function createXmlHttpRequest() {
var xmlhttp = null;
try {
xmlhttp = new XMLHttpRequest();
} catch(e) {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
return null;
}
}
}
return xmlhttp;
}
function getAjaxData() {
xmlhttp1 = createXmlHttpRequest();
if (! xmlhttp1 || xmlhttp1.readyState == 1 || xmlhttp1.readyState == 2 || xmlhttp1.readyState == 3){
return;
}
xmlhttp1.open("GET", "./hoge.php", true);
xmlhttp1.onreadystatechange = function() {
if (xmlhttp1.readyState == 4 && xmlhttp1.status == 200) {
document.getElementById("ajax").innerHTML = xmlhttp1.responseText;
}
}
xmlhttp1.send(null);
}
setInterval("getAjaxData()", 1000);
//-->
</head>
<body>
<div id="ajax"><!-- Ajaxで書き換える部分 --></div>
</body>
</html>
No.3
- 回答日時:
目的はなんだろう?
そもそも、AJAXはおろか、Javascriptもいらないじゃないか...
<meta http-equiv="refresh" content="300">
SEOはよく知らんけど..
この回答への補足
ご回答あありがとうございました!
確かに上記の方法でもjavascript でも実現は可能ですが、リロードした
際に画面が初期の状態(スクロールしてあっても最上部へ戻ってしまう)に
なってしまいますが、ajax を使用した場合はそれがないかと。。。
私の仕入れた情報が間違っているのかもしれませんが、、、、
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PDFを(htmlのように)無限に縦...
-
C言語のflagの使い方が分かりま...
-
入力フォームの値をQRコードで...
-
バッチファイル 特定ウインドウ...
-
画像のドットの部分が抜けてい...
-
Pythonを無料(安価)で学ぶ方...
-
スライドを最後の画像で止めたい
-
bxsliderで最初に縦に複数表示...
-
正規表現で、特定の文字列を含...
-
php コールバック関数
-
ナイトボットのAliasについて
-
これってなんの電話かわかりま...
-
VBAでクイズゲームの作り方
-
以下のURL入れますか?皆さんは↓
-
Chinapost こよパズルどう動か...
-
非同期通信で掲示板を作る際の...
-
非同期通信を使うタイミングが...
-
PYTHONのtkinterについて
-
Pythonのtkinterについて
-
Pythonを勉強する道のり
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
AJAXでのリロードに関して
-
JQueryでAjax通信をキャンセル...
-
要素内を常に一番下を表示させたい
-
Jquery で on/offボタンの実装...
-
cpick.jsでコールバック関数を...
-
ある条件の画像のみ表示を切り...
-
Javascriptを使ってQRコード読...
-
readyStateが4にならない原因
-
SQLのmaxで求めた値を変数に代...
-
JavascriptからPHPへのAjax通信...
-
JavaScriptでtabindexの変更っ...
-
インラインフレームを自動更新...
-
jQuery を外部ファイルから呼び...
-
FullCalendar の複数月表示につ...
-
パソコンで動くjavascriptがス...
-
Ajaxで文字化けしてしまいます
-
複数対応できるチェックボック...
-
同一ページ移動時ハンバーガー...
-
文字列の操作
-
jQuery 複数のライブラリーを表示
おすすめ情報