忍者ブログ

Syok'n Lab

WEB開発のあれこれ PHP,JAVA,Javascript,Ajax,Flex,Air,Linuxなどなど 最近雑記帳になりつつある・・・

※コメント、トラックバックは認証後表示されますのでご了承下さい

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Ajax基本メソッド

//汎用XMLHttpRequestオブジェクト生成
function createHttpRequest()
        {
        //Win ie用
        if(window.ActiveXObject)
                {
                try {
                        //MSXML2以降用
                        return new ActiveXObject("Msxml2.XMLHTTP"); //[1]'
                        }
                catch (e) {
                                try {
                                //旧MSXML用
                                return new ActiveXObject("Microsoft.XMLHTTP"); /
/[1]'
                                        }
                                 catch (e2) {
                                return null;
                                        }
                                }
                }
        else if(window.XMLHttpRequest)
                {
                //Win ie以外のXMLHttpRequestオブジェクト実装ブラウザ用
                return new XMLHttpRequest(); //[1]'
                }
        else
                {
                return null;
                }
        }


//XML送受信実行メソッド
function requestFile( data , method , fileName , async)
        {
        //XMLHttpRequestオブジェクト生成
        var httpoj = createHttpRequest(); //[1]

        //open メソッド
        httpoj.open( method , fileName , async ); //[2]

        //リクエストヘッダ送信
        httpoj.setRequestHeader('Content-Type',"application/x-www-form-urlencode
d;charset=UTF-8");

        //受信時に起動するイベント
        httpoj.onreadystatechange = function()  //[4]
                {
                //readyState値は4で受信完了
                switch(httpoj.readyState)
                        {
                        case 0:
                                load_message('イベント取得中.....');
                                break;
                        case 1:
                                //コールバック
                                load_message('データ生成中.....');
                                break;
                        case 2:
                                load_message('データ送信中.....');
                                break;
                        case 3:
                                load_message('データ受信中.....');
                                break;
                        case 4:
                                //コールバック
                                on_loaded(httpoj);
                                break;
                        }
                }

        //send メソッド
        httpoj.send( data ) //[3]
        }


//XML受信完了時のコールバック関数
function on_loaded(oj)
        {

        //完了時メッセージ
        var mess = '';

        //レスポンスを取得
        res = oj.responseXML; //[6]

        //Textモードでも
        tres = oj.responseText;

        //winの場合XMLで無くても通ってしまうので
        if(res == null || !tres.match("(<|>)"))
                {
                //エラー
                }
        else
                {
                //ここにXML解析ロジック記述
                }
        }

拍手[0回]

PR

この記事へのコメント

Vodafone絵文字 i-mode絵文字 Ezweb絵文字
管理人のみ閲覧できます
 

この記事へのトラックバック

トラックバックURL

免責事項

当ブログに記載している情報に関しては、合法性、正確性、安全性等、いかなる保証もされません。従って、当ブログの情報を元に行う行為については自己責任でお願い致します。

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

最新コメント

[02/10 幸一]
[12/08 yamamoto]
[07/23 Mr.ポテトヘッド]

最新トラックバック

ブログ内検索

Copyright ©  -- Syok'n Lab --  All Rights Reserved

Design by CriCri / Photo by Didi01 / Powered by [PR]

 / 忍者ブログ