資源描述:
《ajax jsp tags》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、文章內(nèi)容來自Java私塾2013-12-27AjaxJSPtags(java私塾)14.3?AjaxJSPtags14.3.1概述為了使開發(fā)Ajax變得輕松愜意,Struts2提供了一些JSPTags,通過這些自定義的標簽庫,使得開發(fā)人員無需掌握額外的知識即可開發(fā)Ajax的應(yīng)用。??????從Struts2.1開始,不再推薦使用Dojo的Plugin,而是改用Ajax的tags,包括:·head:用來下載Dojo文件和相應(yīng)的Javascript代碼·div:用來動態(tài)的加載并展示html內(nèi)容·a:展示為Html的超鏈接形式,點擊后觸發(fā)一個A
2、jax的請求·submit:展示為Html的按鈕形式,點擊后可觸發(fā)異步提交·bind:用來關(guān)聯(lián)事件和對應(yīng)的事件處理程序·datetimepicker:日歷組件·autocompleter:能實現(xiàn)自動完成的功能,類似于搜索框的自動完成功能·textarea:一個復(fù)雜的文本編輯器組件·tabbedpanel:一個顯示多頁面tab面板的組件·tree:一個在頁面上展示為樹的組件·treenode:用來展示為樹中節(jié)點的組件要使用Struts2.1的AjaxTags,需要做以下的工作:??????1:把Dojo插件,也就是struts2-dojo-
3、plugin-2.1.8.1.jar文件,復(fù)制到WEB-INF/lib文件夾下??????2:在頁面上增加taglib的引用,<%@taglibprefix="sx"uri="/struts-dojo-tags"%>??????3:在每個頁面的頂部包含head標簽??????好了,基本的知識就了解到這里,接下來看看具體如何使用Struts2的Ajaxtags。14.3.2?head標簽1:功能head標簽的地位比較特殊,它的功能是用來下載Dojo文件和相應(yīng)的Javascript代碼,因此所有其他使用Dojo標簽的頁面都應(yīng)該包含這個標簽。2
4、:屬性head標簽的屬性有:更多內(nèi)容在‘java私塾官網(wǎng)’文章內(nèi)容來自Java私塾2013-12-27建議大家在開發(fā)期間,把compressed設(shè)置為false,debug設(shè)置為true,這樣方便大家調(diào)試程序;但是在交付給客戶的時候,應(yīng)該把compressed設(shè)置為true,debug設(shè)置為false,這樣可以加快程序的運行。3:使用示例在開發(fā)期間使用head標簽,大致應(yīng)為:?java代碼:查看復(fù)制到剪貼板打印1.<%@?taglib?prefix="sx"?uri="/struts-dojo-tags"?%>??2.
??3.
5、?????4.??在運行期間使用head標簽,大致應(yīng)為:?java代碼:查看復(fù)制到剪貼板打印1.<%@?taglib?prefix="sx"?uri="/struts-dojo-tags"?%>??2.
??更多內(nèi)容在‘java私塾官網(wǎng)’文章內(nèi)容來自Java私塾2013-12-271.??
??2.??14.3.3?div標簽1:功能div標簽展示為html中的Div元素,
6、但是div標簽?zāi)軌虍惒降?、動態(tài)的加載需要展示的內(nèi)容,而且div標簽還提供一個內(nèi)部的計時器,可以循環(huán)的在設(shè)定的時間點去重新加載需要展示的內(nèi)容。2:屬性div標簽的屬性很多,這里羅列一些常用的:更多內(nèi)容在‘java私塾官網(wǎng)’文章內(nèi)容來自Java私塾2013-12-27更多內(nèi)容在‘java私塾官網(wǎng)’文章內(nèi)容來自Java私塾2013-12-273:使用示例更多內(nèi)容在‘java私塾官網(wǎng)’文章內(nèi)容來自Java私塾2013-12-27div標簽的使用是非常簡單的,來通過一個示例進行說明,實現(xiàn)的功能非常簡單,就是通過div來異步顯示Action返回的信息
7、。(1)先看看action的實現(xiàn),只是簡單的返回了一個信息,非常簡單,示例代碼如下:?java代碼:查看復(fù)制到剪貼板打印1.public?class?AjaxServerAction?extends?ActionSupport?{??2.????private?InputStream?inputStream;??3.????public?InputStream?getInputStream()?{??4.????????return?inputStream;??5.????}??6.??????7.????public?String?ex
8、ecute()?throws?Exception?{??8.????????Thread.sleep(3000L);??9.????????inputStream?=?new?ByteArra