怎樣在struts中實現(xiàn)JS通用表單驗證.doc_第1頁
怎樣在struts中實現(xiàn)JS通用表單驗證.doc_第2頁
怎樣在struts中實現(xiàn)JS通用表單驗證.doc_第3頁
怎樣在struts中實現(xiàn)JS通用表單驗證.doc_第4頁
怎樣在struts中實現(xiàn)JS通用表單驗證.doc_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

怎樣在struts中實現(xiàn)JS通用表單驗證?關鍵詞: javascript struts 通用 表單 驗證 作者:歐陽春本篇通過介紹部分源代碼及簡單舉例來說明struts架構中頁面輸入的JS驗證問題及經過擴展后struts標簽的使用。本struts的javascript表單驗證能夠推出要感謝“我佛山人”的優(yōu)秀的JS表單驗證代碼?;贘SP標簽的驗證請直接參照 通用表單驗證.chm。下面只對struts標簽的驗證實現(xiàn)與使用進行舉例說明:文中紅色標記處為新增struts標簽屬性,不可更改屬性中的值為關鍵字,不可更改在JSP文件中使用標簽時就跟普通struts標簽一樣使用,不過多了些控制屬性如簡單吧,實際的頁面效果如那么如何才能實現(xiàn)這個效果呢?別著急,一步步來,還是需要花點功夫的。一、擴展struts源代碼要做到集成JS,用標簽解決表單驗證,這一步當然是少不了的表單中需要驗證的最常見的無非就是以下幾種,text、textarea、password、hidden、radio、select、checkbox,因為text、password、hidden都是繼承抽象類BaseFieldTag,標簽的實現(xiàn)也在BaseFieldTag中,加上其它的每個都要擴展,所以需要修改和擴展的類就有5個,首先要說明的是,我們所作修改要盡量作擴展而不是直接修改struts里面的類,這樣可以方便struts新版本的更新。由于有很多類都依賴于BaseFieldTag,而我們需要的也恰恰在BaseFieldTag里實現(xiàn),迫不得已,我們還是要修改BaseFieldTag(以增加新的屬性,無兼容性問題),除此之外,其它類一律用擴展方式。下面只舉例修改BaseFieldTag,其它類似,就不一一列出了。關鍵部分在方法public int doStartTag()中,由于代碼較長,只列出重要部分,其實也比較簡單滴,只是將JS驗證需要的屬性添加進去而已,以便生成被控制的表單控件。如下if (type != null & (type.equals(text)|type.equals(hidden)|type.equals(password) if (dataType != null) results.append( dataType=); results.append(dataType); results.append(); if (min != null) results.append( min=); results.append(min); results.append(); if (max != null) results.append( max=); results.append(max); results.append(); if (operator != null) results.append( operator=); results.append(operator); results.append(); if (require != null) results.append( require=); results.append(require); results.append(); if (to != null) results.append( to=); results.append(to); results.append(); if (format != null) results.append( format=); results.append(format); results.append(); if (regexp != null) results.append( regexp=); results.append(regexp); results.append(); if (msg != null) results.append( msg=); results.append(msg); results.append(); if (onselect != null) results.append( onSelect=); results.append(onselect); results.append(); 二、修改你的struts中的struts-html.tld文件在相關tag處增加需要的屬性,例如textorg.apache.struts.taglib.html.TextTag dataType false true max false true min false true msg false true operator false true require false true to false true format false true regexp false true .ouyang.tag.ExtRadioTag dataType false true msg false true require false true 其實標簽名為:text、textarea、password、hidden、radio、select、checkbox都是需要添加新的屬性的三、一切就緒后,在JSP中就可以用集成JS驗證的新的標簽了首先,在您的JSP最前面請引入JS源文件,假設JS文件名為check.js,如下:script language=JavaScript src=/js/check.js在FORM處請如下編寫(紅色標記處為您的Form ID):在您提交或點擊按鈕或任何您需要驗證當前表單的時候,如下:經過擴展,使用本標簽已可實現(xiàn)多種標簽(text、textarea、password、hidden、checkbox、select、radio)及多條件限制同時啟用,若使用多條件驗證時,各條件之間請以分號”;”間隔,且dataType與msg必須一一對應,即有一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論