日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

不離開頁面刷新數據

不離開頁面刷新數據

更新時間:2022-05-06 文章作者:未知 信息來源:網絡 閱讀次數:

開門見山,不離開頁面就能刷新頁面中的(部分)數據好處多多。主要是不需要寫無聊代碼維護 state。 ASP.NET (以及其雛形 VI6 SOM)中的 server-side control (VI6 DTC, Script Library) 通過大量 hidden input 來維護頁面 state,其功力之深,非吾輩能及。所以我們要想辦法不離開頁面就能得到 新數據,這樣生活會比較好過。

其實辦法早就有很多。比如自己寫 ActiveX Control 或 Java Applets,或使用系統自己帶的。 如果是 IE 瀏覽器,很久以前就可以使用 ADO RDS 之類的方法從 server 端遠程獲取數據。 我們現在看看 XML 新石器時代的幾種方法:

1. XMLHTTP
  這種方法意思和 RDS 差不多,但在 XML 時代,這種方法顯得比較正經兒。
  網上有個比較好的例子:http://www.asptoday.com/articles/20001219.htm
  Using Fat Clients For E-commerce   作者起這個名字 (Fat client) 就是說要求 browser 要支持 XMLHTTP。
  代碼片斷:
  Function getCategories()
   Dim oXMLHTTP ' As Object
   Dim oCategories ' As Object
   Set oXMLHTTP = CreateObject("Microsoft.XMLHTTP")
   '--- set the XMLHTTP call and issue send (no parm as category
   '--- is included in URL
   oXMLHTTP.open "GET",SERVER_PATH & "demo.asp?action=getcategories",False
   oXMLHTTP.send
   '--- load the response into the Categories data island     
   dsoCategories.loadXML oXMLHTTP.responseText
   '--- transform into HTML and assign to innerHTML property
   divCategories.innerHTML = dsoCategories.documentElement.transformNode(dsoCategoriesXSL.documentElement)
   '--- tidy up the object
   Set oXMLHTTP = Nothing    
  End Function

  其實直接使用 DOMDocument.load 也是一樣的。
  參見 http://www.chinaasp.com/sqlbbs/showEssence.asp?id=3586
  Zee 的帖子:“在IE里應用XML的一個小例子:解決雙下拉選單的連動問題。”
  代碼片斷:
  var oXMLDoc = new ActiveXObject('MSXML');
  sURL = '<%=strPathInfo%>XMLCity.asp?State=' + sState;
  oXMLDoc.url = sURL;

  不顯性地創建 ActiveXObject 也可以,變通的方法是使用 <XML ID="myData">。

2. 如何支持 Netscape browser?
  考慮到可以使用 XML SRC 的方式在頁面中獲得 XML data,我們可以仔細看一眼 HTML properties: SRC。
  可以注意到還有個常用 tag 具備這個 attribute -- IFrame。
  所以我們可以使用下面的思路來從 server 獲取數據,這回我們不使用 XML island, ActiveX Object,以便支持 NN。
  a. 在頁面中加一個隱藏的 IFrame。
  b. 需要調用數據時,語句形如:IFrame.src = "http://localhost/getData?a=123"
  c. 為了迎合 NN 的胃口,我們的返回值不是直接 XML Data,而是 HTML,這樣才能被 IFrame 接受
  d. 但最重要的是,這個 HTML Page 實際上是一個 well-formed 的 XML document。比如:
   <HTML>
   <BODY>
   <P ID="P1">abc</P>
   <P ID="P2">def</P>
   <P ID="P3">ghi</P>
   </BODY>
   </HTML>
  e. 我們可以使用 client-side javascript 把這個 well-formed XML Doc 中的數據抓取出來,加入到我們的 select listbox 中。

  (是在一個同事那里看到的這個思路,感覺他是劍術通神后,捻花摘葉皆是劍,何必拘泥于 XML DOM Object。)


掛一漏萬,希望大家再加上幾種方法。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 亚洲午夜久久久久久91 | 日韩欧美在线中文字幕 | 国产露脸3pwww福利视频 | 中文字幕第5页 | 四虎精品影院2022 | 国产淫语 | 久久99热精品免费观看k影院 | 日本片在线 | 天天拍天天射 | 国产成人免费高清视频 | 步兵网站 | 精品欧美一区二区三区在线观看 | 中文字幕日韩精品麻豆系列 | 国产综合色在线视频区 | 精品国产一二三区 | 国产精品伦一区二区三级视频 | 全黄性性激高免费视频 | 91久热| 久久精品国产曰本波多野结衣 | 欧美成a人免费观看久久 | 色吧欧美 | 中文字幕一区二区三区乱码aⅴ | 九九久久香港经典三级精品 | 欧美亚洲国产成人高清在线 | 久久中出 | 国产一级毛片一区二区三区 | 网络色综合久久 | 精品欧美一区视频在线观看 | 伊人久久综合影院 | 91精品国产91久久久久福利 | 日韩综合网站 | 欧美日产国产亚洲综合图区一 | 国产高清久久 | 国产五月色婷婷综合 | 久久久久毛片免费观看 | 欧美成人一级毛片 | 国产精品23p | 亚洲国产第一区二区三区 | 国产精品国产三级国产专播下 | 久久一本一区二区三区 | 午夜夜|