我的 jsp 頁面有一個表單,它向 servlet 發送一個 POST 請求,它從表單輸入中檢查一些東西,根據這個檢查的結果向請求添加一個屬性,然后將請求重定向到同一個 jsp,它應相應地顯示警報訊息。這是我的小服務程式:
req.setAttribute("error", "message");
req.getRequestDispatcher("/htmls/myjsp.jsp").forward(req, resp);
然后 myjsp.jsp 有:
<script type="text/javascript">
var msg ='<%request.getAttribute("error"); %>';
if (msg != null && msg != "") {
function alertName(){
alert(msg);
}
}
</script>
在jsp的底部:
<script type="text/javascript"> window.onload = alertName; </script>
這不起作用, msg 始終是一個空字串。該字串已正確添加為屬性,但我猜 jsp 中檢索該屬性的腳本不正確。在開發人員工具中,我看到生成的 html 是:
<script type="text/javascript">
var msg ='';
if (msg != null && msg != "") {
function alertName(){
alert(msg);
}
}
</script>
此解決方案基于此處接受的答案。
uj5u.com熱心網友回復:
我通過改變來修復它
var msg ='<%request.getAttribute("error"); %>';
為了
var msg = '${error}';
現在按預期作業!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/516556.html
