Posted on 2007-01-21 15:59
HandSoft 閱讀(359)
評論(0) 編輯 收藏 所屬分類:
Ajax技術(shù)相關(guān)
??????? Ajax,或者說是異步JavaScript和XML,描述了一種使用混合了HTML(或XHTML)和層疊樣式表作為表達(dá)信息,來創(chuàng)建交互式的Web應(yīng)用的開發(fā)技術(shù);文檔對象模型(DOM),JavaScript,動態(tài)地顯示和與表達(dá)信息進(jìn)行交互;并且,XMLHttpRequest對象與Web服務(wù)器異步地交換和處理數(shù)據(jù)。
因特網(wǎng)上許多例子展示了在一個HTML文件內(nèi)部使用XMLHttpRequest與服務(wù)器端進(jìn)行交互的必要的步驟。當(dāng)手工地編寫和維護(hù)XMLHttpRequest代碼時,開發(fā)者必須處理許多潛在的問題,特別是類似于跨瀏覽器的DOM實(shí)現(xiàn)的兼容性這樣的問題。這將會導(dǎo)致在編碼和調(diào)試Javascript代碼上面花費(fèi)數(shù)不清的時間,這顯然對開發(fā)者來說很不友好。
DWR(直接Web遠(yuǎn)程控制)項(xiàng)目是在Apache許可下的一個開源的解決方案,它供給那些想要以一種簡單的方式使用Ajax和XMLHttpRequest的開發(fā)者。它具有一套Javascript功能集,它們把從HTML頁面調(diào)用應(yīng)用服務(wù)器上的Java對象的方法簡化了。它操控不同類型的參數(shù),并同時保持了HTML代碼的可讀性。
一. Util.js
????? util.js包含一系列的工具函數(shù)使用javascript返回的數(shù)據(jù)來幫助更新Web頁面。
util.js中有四種基本的頁面操作函數(shù):
getValue[s];setValue[s]可以和除過tables、lists、images的大部分的html元素交互.
getText()可以和選擇列表(select lists)交互.
編輯tables用addRows()和removeAllRows()方法.編輯列表(選擇lists和ul,ol列表)用
addOptions()和removeAllOptions().
1.${}
? ${}函數(shù)是一個(javascript)全局變量.
? $=document.getElementById
? '$'可以通過給定的'ID'取得HTML文檔元素.他也可返回一個包含返回元素的數(shù)組.
2.Generating Lists
? DWRUtil.addOptions()描述了下拉列表的實(shí)現(xiàn)
? var sel = DWRUtil.getValue(id);
? DWRUtil.removeAllOptions(id);
? DWRUtil.addOptions(id,...);
? DWRUtil.setValue(id,sel);
? 如果想要添加"請選擇..."項(xiàng),可以添加以下項(xiàng): DWRUtil.addOptions(id,["Please select ..."]);
? DWRUtil.addOptions有四種使用模式:
? Array:
?????? DWRUtil.addOptions(selectid,array)和用文本和值創(chuàng)建了選擇列表.
? Array of Objects(using option text = option value):
?????? DWRUtil.addOptions(selectid,data,prop)用數(shù)組元素創(chuàng)建了選擇列表,選擇列表中的值和文本設(shè)定為
?????? 數(shù)組中的每個對象的屬性.
? Array of objects(with differing option text and value):
?????? DWRUtil.addOptions(selectid,array,valueprop,textprop)
? Object:
?????? DWRUtil.addOptions(selectid,map,reverse)
? Map of object:
?????? DWRUtil.addOptions(ulid,array)
?