2009年10月31日

[JavaScript]jQueryでテキストファイルを読み込む



今回は、jQuery.get(),jQuery.post(),jQuery.ajax()の3つで、テキストファイルを取得したいと思います。
jQuery.get(url, param, callback)
get通信をする
第1引数は、指定のURL
第2引数は、GET送信時に、付加するパラメータ
第3引数は、通信処理が発生したときに呼び出す処理(関数)
第1引数以外は省略することができます。
戻り値としてXMLHttpRequestオブジェクトを返します。
このオブジェクトを使って、responseText、responseXMLでデータを取得することができます。もちろん、通信ステータスなども取得できます。

jQuery.post(url, param, callback)
post通信をする
第1引数は、指定のURL
第2引数は、POST送信時に、付加するパラメータ
第3引数は、通信処理が発生したときに呼び出す処理(関数)
第1引数以外は省略することができます。

jQuery.ajax(url, type, success)
第1引数に、指定のURL
第2引数に、送信するタイプを指定。主にgetかpostを
第3引数に、通信が正しく完了したときに呼び出す関数の指定
これらを関数の{}内にオプションパラメータとして指定します。
以下はその例です。
jQuery.ajax({
url : "./news.txt",
type : "get",
success : function(data){
alert(data);
});


はじめにjQuery.getで書いてみます。
test.txtとindex.htmlはutf-8で保存しておいてください。
テキストファイルには、
【test.txt】
apple
orange
grape
banana

と書いておきましょう。
【main.js】
$(function(){
	var httpObj = jQuery.get("./test.txt", null, function(){
	document.getElementById("text").innerHTML = httpObj.responseText;
	});
});

【index.html】
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>jQueryObject</title>
<script type="text/javascript" src="./jquery.js"></script>
<script type="text/javascript" src="./main.js"></script>
<body>
<div id="text"></div>
</body>
</html>

結果
apple orange grape banana

次に、jQuery.postで書きかえます。main.jsを以下のように書きかえてください。
【main.js】
$(function(){
	var httpObj = jQuery.post("./ggg.txt",null, function(){
		document.getElementById("text").innerHTML = httpObj.responseText;
	});
});

最後に、jQuery.ajaxで書きかえてみます。main.jsを以下のように書きかえてください。
【main.js】
$(function(){
	jQuery.ajax({
		url : "./test.txt",
		type : "get",
		success : function(data){
			document.getElementById("text").innerHTML = data;
		}
	});
});

関連リンク
第5章 「非同期通信でデータを読み込む」

posted by トンヌラ at 14:20 | Comment(0) | JavaScript | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: