some java ---> do sap
apap/pp |
? 對于C/S模式下的對話框彈出問題就不說了,這里只討論B/S模式下的實現.
? 開發環境是:struts+hiberinate+spring
??遇到的問題是在JSP頁面新增成功后彈出新增成功的提示對話框.
? 剛開始覺得在JAVA中很不容易實現,因為以前寫C#時習慣了一種寫法:Response.Write("<script>alert('say what you want to say');</script>");但在JAVA中我卻不知道在action中去怎么寫出這樣的代碼了.為此感覺不好做,但又不得不做,所以就只有想另外一種辦法了.問題是解決了,但總感覺有些郁悶,為什么不可以更簡單的實現呢?
??? 下面是我實現的過程.JSP頁面加了一個<html:hidden property="propertyName" />,然后就是新增操作的action對應的form的后臺代碼中加了變量propertyName和與此對應的getter和setter屬性,這樣在action中當新增成功后就通過form中的setter屬性對字段賦值.然后通過腳本來取得JSP頁面上的隱藏控件(<html:didden/>)的value.這樣做判斷就可以實現了.
? 也不知道大家都有什么好的方法,希望貼出來學習一下.
???下邊是部分代碼:
???action部分代碼:
???? public ActionForward sumbit(ActionMapping mapping,
??????....
????? if (isAdd) {
??????? bookVhlForm.setBookNo(bookNo);
??????? bookVhlForm.reset(mapping,request);
??????? this.saveErrors(request, errors);
??????? return mapping.findForward("bookVehicle");
????? }
??????...
???????return mapping.findForward("bookVehicle");
?????}
???actionForm部分代碼:
??????package com.portal.web.vehicleManage.form
?????????import org.apache.struts.action.*;
?????????import javax.servlet.http.*;
?????????public class BookVhlForm??? extends ActionForm {
?????????...
?????????private String bookNo;
?????????....
?????????public String getBookNo() {
?????????????return bookNo;
????????}
????????public void setBookNo(String bookNo) {
????????? this.bookNo = bookNo;
??????? }
???JSP腳本:
??????function bookNo(){
??????????var bookNo=document.all("bookNo").value;?
??????????if(bookNo!=""){?
????????????alert("您的預約登記已申請成功,預約登記號為:"+ bookNo);?
??????????} else{?
????????????alert("do the operate which you want!");
???????????}?
?????????}
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
25 | 26 | 27 | 28 | 29 | 30 | 1 | |||
2 | 3 | 4 | 5 | 6 | 7 | 8 | |||
9 | 10 | 11 | 12 | 13 | 14 | 15 | |||
16 | 17 | 18 | 19 | 20 | 21 | 22 | |||
23 | 24 | 25 | 26 | 27 | 28 | 29 | |||
30 | 31 | 1 | 2 | 3 | 4 | 5 |