亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > AJAX > 正文

創新源于理解 輕松打造自己的AJAX框架

2024-07-21 02:30:20
字體:
來源:轉載
供稿:網友
  • 本文來源于網頁設計愛好者web開發社區http://www.html.org.cn收集整理,歡迎訪問。
  •   本文實現的只是一個最基本的ajax框架,雖然ajax并不是什么新技術,但是做為一個框架并不是一篇文章就能說明白的。寫這篇文章的目的:希望能幫助初學者更好的學習、運用ajax框架。

      我始終相信只有你真正理解了一種技術,了解了技術本身,你才能更好、更靈活的使用它。一個程序員對技術的了解并不能僅僅停留在對技術的應用上。

      環境:window xp sp2 + .net framwwork 2.0.50727。

      asp.net 2.0自帶的客戶端回調

      asp.net 2.0已經發布。2.0有了許多新特性,客戶端回調就是其中之一。客戶端回調允許我們不經過回發而調用服務器端的方法,與ajax提供的功能是一致的,但是不如ajax靈活,ajax可以自定義調用的方法, 2.0自帶的回調功能卻不行。

      要使用客戶端回調功能必須實現system.web.ui.icallbackeventhandler接口。

      這個接口包含兩個方法:

    //客戶端回調時固定調用此方法
    public void raisecallbackevent(string eventargument)
    //執行完raisecallbackevent后將調用此方法。此方法的返回值將被發回客戶端
    public string getcallbackresult()

      例一:

    .cs:
    string cbreference = page.clientscript.getcallbackeventreference(this,"arg", "receiveserverdata", "context");
    string callbackscript;
    callbackscript = "function callserver(arg, context)" + "{ " + cbreference + "} ;";
    page.clientscript.registerclientscriptblock(this.gettype(),"callserver", callbackscript, true);
    javascript:
    <script type="text/javascript">
    function lookupstock()
    {
     var product = "";
     var lb = document.forms[0].listbox1;
     if(lb.selectedindex >= 0)
    product = lb.options[lb.selectedindex].text;
    callserver(product, "");
    }
    function receiveserverdata(rvalue) { results.innertext = rvalue; }
    </script>

    |||
    |||

      2. 客戶端javascript代碼:

    function callmethod(assemblyname,methodname,argus)
    {
     var args = "";
     for(var i=0;i<argus.length;i++)
    args += argus[i] + ",";
    if(args.length>0) args = args.substr(0,args.length-1);
    var xmlhttp = new activexobject('microsoft.xmlhttp');
    url = "ajax/ajax.czhenq?as=" + assemblyname + "&me=" + methodname +"&ar="+ args;
    xmlhttp.open("post",url,false);
    xmlhttp.send();
    alert(xmlhttp.responsetext);
    }

      3.一個簡單的ajax框架已經實現?,F在寫段代碼來測試.

      使用自己的ajax:

      1.新建一個網站,并應用剛才你編寫的httphandler。并在網站的web.config中注冊你的httphandler,說明那些請求將使用你編寫的handler來處理。下面的內容說明:所有以"czq"結尾的請求,都將使用"czhenq.httphandlerfactory"來處理。

    <httphandlers>
    <add verb="post,get" path="*.czq" type="czhenq.httphandlerfactory,
    czhenq.ajax"/>
    </httphandlers>

      2.添加一個web頁面,將剛才的腳本拷貝到頁面中,并添加一個你要調用的方法。

    private string add(int i, int j)
    {
     return textbox1.text;
    }

      3.在頁面中放置一個hiddenfield控件,命名為assemblyname。 并在page_load中添加如下代碼:

    string assemblyname = czhenq.ajax.class1.encode(typeof(_default).assemblyqualifiedname);
    assemblyname.value = assemblyname;

      4.頁面中添加如下腳本:

    var assemblyname = document.getelementbyid("assemblyname");
    var argus = new array();
    argus.push("100");
    argus.push("200");
    callmethod(assemblyname,"add",argus);

      總結:

      ajax并不是一種新的技術,它只是一些已有技術的有機結合.我們可以將ajax簡單的理解為:ajax是對javascript調用xmlhttp的封裝.它改變的是代碼書寫方式.

      附 encode 與 dencode實現:

    public static string encode(string value)
    {
     byte[] bytes = asciiencoding.ascii.getbytes(value);
     return convert.tobase64string(bytes);
    }
    public static string dencode(string value)
    {
     byte[] bytes = convert.frombase64string(value);
     return asciiencoding.ascii.getstring(bytes);
    }

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
    欧美日韩人人澡狠狠躁视频| 亚洲无亚洲人成网站77777| 精品动漫一区二区三区| 亚洲精品99999| 亚洲激情小视频| 欧美激情2020午夜免费观看| 日韩电影视频免费| 日韩欧美a级成人黄色| 97在线视频精品| 97精品国产97久久久久久春色| 欧美日韩亚洲一区二区| 亚洲一级一级97网| 国产v综合ⅴ日韩v欧美大片| 久久精品国产精品亚洲| 国产欧美最新羞羞视频在线观看| 国产精品女主播视频| 51色欧美片视频在线观看| 色偷偷av一区二区三区乱| 久久精品亚洲94久久精品| 日韩av成人在线| 亚洲大胆人体视频| 国产精品永久免费在线| 91精品成人久久| 高清在线视频日韩欧美| 久久国产精品网站| 热久久免费视频精品| zzjj国产精品一区二区| 亚洲福利影片在线| 这里精品视频免费| 欧美成人精品h版在线观看| 国产999精品视频| 日韩精品在线视频美女| 日韩美女福利视频| 欧美日韩激情视频| 九九热最新视频//这里只有精品| 亚洲一区二区三区777| 欧美成人午夜免费视在线看片| 欧美成人午夜视频| 51午夜精品视频| 亚洲成人精品视频| 精品国产欧美成人夜夜嗨| 91精品国产乱码久久久久久蜜臀| 九九热这里只有在线精品视| 国产在线观看不卡| 久久精品视频网站| 97免费视频在线播放| 欧美黄网免费在线观看| 国产精品福利片| 国产欧美精品xxxx另类| 欧美日韩亚洲精品一区二区三区| 精品精品国产国产自在线| 国产午夜精品一区理论片飘花| 久久人人爽人人爽人人片亚洲| 久久视频中文字幕| 国内偷自视频区视频综合| 久久久噜久噜久久综合| 成人午夜激情免费视频| 日韩精品www| 日韩成人中文字幕在线观看| 91免费看片在线| 上原亚衣av一区二区三区| 国产日韩一区在线| 人体精品一二三区| 亚洲欧美日本精品| 亚洲视频在线观看网站| 国模叶桐国产精品一区| 姬川优奈aav一区二区| 2018国产精品视频| 亚洲美女精品成人在线视频| 欧美性猛交xxxx黑人| 精品高清美女精品国产区| 亚洲国产成人精品一区二区| 在线精品高清中文字幕| 国产不卡av在线| 日韩免费在线观看视频| 欧美国产日韩一区二区在线观看| 亚洲xxxxx性| 欧美激情图片区| 欧美午夜女人视频在线| 欧美日韩国产丝袜美女| 日韩高清免费在线| 国产美女精彩久久| 成人国产在线激情| 欧美国产日韩视频| 狠狠爱在线视频一区| 亚洲欧美日韩精品久久奇米色影视| 国产精品激情av在线播放| 在线看日韩欧美| 疯狂做受xxxx欧美肥白少妇| 亚洲男人天堂久| 国产精品入口日韩视频大尺度| 日韩av色在线| 亚洲精品动漫久久久久| 国产91久久婷婷一区二区| 久热精品在线视频| 国内外成人免费激情在线视频| 日韩av手机在线| 国产精品丝袜白浆摸在线| 欧美午夜精品久久久久久浪潮| 午夜精品一区二区三区av| 国产精品久久久久一区二区| 国产免费一区二区三区在线能观看| 欧美在线观看www| 有码中文亚洲精品| 在线精品国产欧美| 久久精品国产亚洲7777| 日韩精品中文字幕在线| 欧美日韩一区二区在线| 日韩av在线高清| 性色av一区二区三区红粉影视| 成人免费视频a| 日韩av资源在线播放| 精品久久久国产精品999| 色婷婷综合久久久久| 成人疯狂猛交xxx| 一本大道香蕉久在线播放29| 日韩av影院在线观看| 欧美专区国产专区| 亚洲综合精品伊人久久| 38少妇精品导航| 亚洲精品国产精品国自产在线| 亚洲欧美激情四射在线日| 欧美一区二区三区……| 一区二区中文字幕| 性色av一区二区三区红粉影视| 日韩av在线网站| 久久高清视频免费| 午夜精品一区二区三区在线| 美日韩精品免费观看视频| 91大神福利视频在线| 正在播放国产一区| 亚洲视频在线视频| 91国产视频在线播放| 国产aⅴ夜夜欢一区二区三区| 韩日精品中文字幕| 一本色道久久综合狠狠躁篇怎么玩| 91成人在线视频| 欧美性猛交xxxx免费看久久久| 成人av在线亚洲| 欧美在线www| 久久中国妇女中文字幕| 久久久久一本一区二区青青蜜月| 中文欧美日本在线资源| 国产91成人video| 欧美视频在线免费看| 国产美女主播一区| 亚洲免费成人av电影| 国产做受高潮69| 久久伊人精品一区二区三区| 国模精品系列视频| 精品成人乱色一区二区| 欧美日韩中文字幕在线| 国产美女精彩久久| 韩国19禁主播vip福利视频| 国产精品激情av在线播放| 最近2019年手机中文字幕| 亚洲国内精品视频| 亚洲色图欧美制服丝袜另类第一页| 国产精品丝袜白浆摸在线| 日本一区二区三区四区视频| 亚洲成人xxx| 韩国一区二区电影| 成人动漫网站在线观看| 91免费视频网站|