[問題] 從server丟資訊給javascript

看板Ajax作者 (guest)時間13年前 (2012/03/05 22:30), 編輯推噓4(409)
留言13則, 2人參與, 最新討論串1/1
server端是使用jsp servlet, 達成條件之後把東西丟回前台, response.sendRedirect(path+"/index.jsp?status=checked"); 然後在 index.jsp 加一段javascript function QueryString(item){ var sValue=location.search.match(new RegExp("[\?\&]"+item+"=([^\&]*)(\&?)","i")); return sValue?sValue[1]:sValue; } if(QueryString("status")=='checked'){ alert('balabala'); } 目前是可以做出我想做的事情沒錯, 只是在想有辦法讓server端丟回來的東西偷偷來, 而不是光明正大的寫在網址給人看嘛... -- 其實我不太確定這個該寫在這個版還是Java版(汗) 如果不屬於這邊麻煩告知一聲,我會自己動手的(繼續汗) 感謝@@> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 101.14.164.5

03/05 22:56, , 1F
<% if(/*條件成立*/) out.print("alert('balabala')"); %>
03/05 22:56, 1F

03/05 22:56, , 2F
server 傳給 client 直接印出來就好了.... 你是不是一時忘
03/05 22:56, 2F

03/05 22:57, , 3F
記javascript只是script而已? 囧"
03/05 22:57, 3F

03/05 22:57, , 4F
啊對了,那段<% %> 要包在<script></script>中
03/05 22:57, 4F
啊不好意思,仔細看看我寫的好像不太好^^"... 我是從servlet把東西丟過來的,不是在jsp網頁上面工作。 簡單敘述一下我想做的東西好了, 基本上就只是簡單的email驗證,user按下link之後連回server觸發我的servlet, 然後servlet把傳過來的資訊過濾完之後,如果成功便sendRedirect回index.jsp 順便帶上驗證成功的關鍵字去前台觸發javascript,然後出現特效。 不過網址上面帶著那些字感覺不太好看(自我感覺不良好), 所以想說有沒有辦法把那些資訊偷偷地塞給javascript, 而不是秀在網址列上面這樣。 大概是這樣,感謝@@>

03/05 23:17, , 5F
那,有兩個方案。
03/05 23:17, 5F

03/05 23:19, , 6F
1.用ifram傳email去檢查。 2.ajax
03/05 23:19, 6F

03/05 23:21, , 7F
放session好像也可以.......
03/05 23:21, 7F
ajax是有想過,不過不曉得在這個架構該把程式放在哪一段好... session感覺好像行得通,明天來試試@@> 感謝感謝..

03/05 23:25, , 8F
用forward好像比較正規一點,不過傳變數的方式有點不一樣,
03/05 23:25, 8F

03/05 23:26, , 9F
那地方我看過而已,還沒實作過。
03/05 23:26, 9F
剛有試過用forward,不過我只會簡單的用法XD" 不曉得您是在哪邊看到其他傳變數方法的文章?想去查閱參考看看~~

03/05 23:27, , 10F
http://ppt.cc/oaER 3.0那一章
03/05 23:27, 10F
<(_ _)> 非常感謝!!! 剛剛試出了一個方法,所以上來讓大家見笑一下^^ servlet的部份假設是這麼做的... String theMessage = "Hello, World!"; request.setAttribute("message", theMessage); RequestDispatcher rd = getServletContext().getRequestDispatcher("/index.jsp"); rd.forward(request, response); 那麼觸發了這隻servlet之後就會dispatch hello world到前台去。 <input type="hidden" value="${message}" id="msg"> 前台只要弄個隱藏的表單去接,然後把value設定成EL語法。 再配合上 $('#msg').val(); 那麼就可以輕鬆的把關鍵字拿去觸發jQuery的特效了 :D ※ 編輯: swallowcc 來自: 101.14.164.5 (03/06 01:25)

03/06 08:16, , 11F
關鍵字dwr
03/06 08:16, 11F

03/06 08:18, , 12F
你可以嘗試用看到
03/06 08:18, 12F

03/06 08:18, , 13F
看看
03/06 08:18, 13F
文章代碼(AID): #1FLCuI89 (Ajax)