2012-11-23 57 views
0

我只是一個菜鳥,我正在嘗試學習JSP(我正在使用scriptlet),servlet,bean和Ajax。 我通過調用一個servlet(通過Ajax)來驗證一些註冊表單。每次插入字符時,都會調用Ajax函數,並將「值」發送給其作業要檢查此值是否正確的servlet。 servlet獲取一個HttpSession,然後它對傳遞的值進行操作並將其保存到一個bean中,最後設置爲session.setAttribute("bean_name", bean)。在JSP中,我使用scope = session插入了jsp:usebean標籤。我沒有檢索值的問題,例如<%= bean.getUsername()%>,但問題是所有的表單值不會更新,除非我刷新頁面Java Bean沒有更新,除非刷新頁面

它可能是什麼?

+0

在頁面呈現中獲取Bean值。如果您希望視圖上的值更新而不刷新。你可以使用ajax重新定義一個特定的字段。 –

回答

0

您對該Servlet進行AJAX調用。 Servlet完成它需要做的事情並呈現響應。但是,AJAX調用是通過JavaScript進行的,之後頁面已經被渲染。

您需要做的是編輯發出AJAX調用的JavaScript代碼。一旦AJAX調用發生,您的JavaScript代碼就必須等待Servlet返回響應,然後使用客戶端設施(如DHTML)編輯已經呈現的頁面。

+0

我正在嘗試這樣做,但我仍然沒有弄明白。我嘗試了JSF,它運行得很順利,但是,由於它是一個項目,我不允許使用JSF,所以我希望你能給我看一些例子或給我一些其他提示。 還設置'xmlhttp.open(「GET」,「servlet?x = y」,false);'不會解決問題。 –