posts - 66,  comments - 40,  trackbacks - 0

          ????這個標題不知道怎么取才好,其實要實現的功能就是在客戶端要將大量的數據傳遞到服務端,我們知道url的長度是有限制的,如果使用url的參數來傳遞數據,只能傳遞很少的關鍵信息,但有時候我們要傳遞大量的信息,比如一張單據中的所有商品的商品編號等等.
          ??? Ajax技術中的xmlhttp.send()方法提供我們傳送大量數據的功能,要使用該功能,首先要將要傳到服務端的數據封裝在一個xml對象中,在將這個xml對象的xml屬性做為send()方法的參數就可以.
          ??? 客戶端代碼:

          ???????????????????? var ?guidArray = guidlist.split( " , " );
          ????????????????????
          var ?xmlDom = new ?ActiveXObject( " MSXML2.DOMDocument " );
          ????????????????????xmlDom.loadXML(
          "" );
          ????????????????????
          var ?domRoot = ?xmlDom.createElement( " NewDataSet " );
          ????????????????????xmlDom.appendChild(domRoot);
          ????????????????????
          for ( var ?i = 0 ;i < guidArray.length;i ++ )
          ????????????????????{
          ???????????????????????
          var ?node = ?xmlDom.createElement( " guid " );
          ???????????????????????node.text
          = guidArray[i];
          ???????????????????????domRoot.appendChild(node);???????????????????????
          ????????????????????}
          ????????????????????
          ????????????????????
          var ?xmlhttp = new ?ActiveXObject( " MSXML2.XMLHTTP " );????????????????????
          ????????????????????xmlhttp.onreadystatechange
          = function (){
          ????????????????????????????
          if ?(xmlhttp.readyState == 4 )
          ????????????????????????????{
          ??????????????????????????????
          if ?(xmlhttp.status == 200 )
          ??????????????????????????????{
          ?????????????????????????????????alert(
          " 處理完成 " );
          ??????????????????????????????}
          ??????????????????????????????
          else
          ??????????????????????????????{
          ?????????????????????????????????alert(xmlhttp.responseText);??
          ??????????????????????????????}
          ????????????????????????????}
          ??????????????????????????????????
          ????????????????????}
          ????????????????????xmlhttp.Open(
          " POST " , " fmSmsPostProcess.aspx?sStatus= " + escape(sStatus) + " &sProcessResult= " + escape(document.getElementById( " btProcessResult " ).value) +
          ?????????????????????????????????????????
          " &sReStore= " + escape(document.getElementById( " btReStore " ).value), true );
          ????????????????????xmlhttp.setRequestHeader(
          " Content-Type " , " text/xml " );?????????????????????????????????????????
          ????????????????????xmlhttp.send(xmlDom.xml);
          服務端需要從請求流中,解析出客戶端傳入的xml的內容,服務端代碼:
          ????????????????System.IO.Stream?instream?=?Page.Request.InputStream;
          ????????????????BinaryReader?br?
          =?new?BinaryReader(instream,System.Text.Encoding.UTF8);
          ????????????????
          byte[]?byt?=?br.ReadBytes((int)instream.Length);
          ????????????????
          string?sXml?=?System.Text.Encoding.UTF8.GetString(byt);

          ????????????????System.Xml.XmlDocument?xmlDoc?
          =?new?System.Xml.XmlDocument();
          ????????????????xmlDoc.LoadXml(sXml);

          ????????????????XmlElement?xe
          =?xmlDoc.DocumentElement;
          ????????????????
          for(int?i=0;i<?xe.ChildNodes.Count;i++)
          ????????????????{
          ????????????????????sGuid?
          =?sGuid?+?",'"?+?xe.ChildNodes[i].InnerText+"'";
          ????????????????}
          posted on 2006-08-08 18:12 happytian 閱讀(5224) 評論(3)  編輯  收藏

          FeedBack:
          # re: 使用xmlhttp.send()方法的參數來傳遞大容量的數據
          2007-09-28 15:40 | 狗的鼻子
          該問太好了,我正好碰到這個問題。拖福解決,對博主表示感謝!  回復  更多評論
            
          # re: 使用xmlhttp.send()方法的參數來傳遞大容量的數據[未登錄]
          2007-10-07 15:19 | happytian
          不客氣,互相學習
            回復  更多評論
            
          # re: 使用xmlhttp.send()方法的參數來傳遞大容量的數據[未登錄]
          2009-01-15 14:59 | xxx
          :)
          受教了  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2009年1月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          Welcome here, my friend!

          常用鏈接

          留言簿(12)

          隨筆檔案(66)

          文章分類

          文章檔案(63)

          web

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 89352
          • 排名 - 647

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 望谟县| 桂平市| 灵山县| 曲周县| 武安市| 宽甸| 晋中市| 长阳| 乌拉特前旗| 凤凰县| 永胜县| 桑植县| 晋中市| 左贡县| 海南省| 珠海市| 罗山县| 土默特左旗| 绿春县| 南汇区| 宜宾县| 瑞金市| 遂宁市| 包头市| 分宜县| 南部县| 会宁县| 永修县| 商河县| 芦山县| 东安县| 木里| 故城县| 社会| 泰顺县| 城口县| 潮州市| 当阳市| 东乡县| 德惠市| 容城县|