簡體   English   中英

JSP頁面不斷刷新

[英]JSP page keeps refreshing

好的,因此,一旦我導航到此頁面並加載,我想將其重定向到“ basket.jsp”,但由於某些原因,它會不斷刷新。 這一定與我一遍又一遍地調用onload函數有關,但是我不知道為什么這樣做。

我的代碼:

 <% String empty = request.getParameter("emptyBasket"); if (empty!=null) { basket.clearBasket(); } String item = request.getParameter("addItem"); basket.addItem(item); %> <html> <head> <link rel="stylesheet" href="css/style.css" type="text/css"/> </head> <body> <table> <!-- some table stuff unimportant --> </table> <p> Order total = <%= basket.getTotalString()%> <% if ( basket.getTotal() > 0) { %> <form action="order.jsp" method="post"> <input type="text" name="name" size="20"> <input type="submit" value="Place Order" /> </form> <form action="basket.jsp" method="get"> <input type="hidden" name="emptyBasket" value="yes"> <input type="submit" value="Empty Basket" /> </form> <% } %> <script> window.onload = function(){ window.location.href = 'basket.jsp'; } </script> </body> </html> 

如果basket.getTotal()> 0您正在創建2個表單? 然后您如何提交數據? 和在哪里..這段代碼沒有意義

(基本上就像是true創建2個表單,然后在刷新頁面上將這2個表單分別提交給訂單,將其提交給購物籃一樣

總的來說,在視圖上擁有比html更多的java是不好的..但是我認為這是atm的主要問題

形式為action =“ basket.jsp” method =“ get” && window.location.href ='basket.jsp';

您將表單提交到該頁面,然后刷新它

我猜測您正在嘗試做的幾件事,但我可能會完全失望。

您能否在這里解釋邏輯或流程是什么?

另外..我不認為您應該在html頁面上接收參數,因此您需要一個控制器。

您應該將結構從index.html中的所有內容更改為..

項目

-src

--controller.java

-網絡

--index.html

將數據從index.html提交到controller.java(controller.java可以是servlet)。 在controller.java中實現doGet / doPost函數並收集數據。 您甚至可以直接在該servlet中執行邏輯,然后使用請求分派器將數據發送回視圖。

  1. <meta http-equiv="refresh" content="0; url=your url to another page" />但是W3C不鼓勵使用meta進行重定向。

  2. <body onload=window.location='your url to another page'>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM