2010-05-26 49 views
7

如何從JSP獲得按鈕值在JSP與Servlet :如何從JSP獲得按鈕值與Servlet

<input type=button name=bt value=gi onclick="document.frm.submit();"></input> 

,並在servlet的那樣:

String gi =request.getParameter("bt"); 
    System.out.print("button value" +gi); 

結果=空

感謝

回答

3

以一個隱變量內部形狀和使用它像這樣。

<form name="frm" method="post" action=""> 
<input type="hidden" name="hdnbt" /> 
<input type="button" name="bt" value="gi" onclick="{document.frm.hdnbt.value=this.value;document.frm.submit();}" /> 
</form> 

現在,在servlet,

String gi =request.getParameter("hdnbt"); 
System.out.print("button value" +gi); 
+0

愚蠢的問題,但我可以擴展到幾個按鈕?我有6個按鈕,每個按鈕都有自己的功能,並希望儘可能實現此功能。 – 2015-04-22 10:05:14

24

而是使用<input type="submit">

<input type="submit" name="bt" value="gi"> 

它的名稱/值對將被髮送到服務器端,以及:

String bt = request.getParameter("bt"); // gi 

無需JavaScript的黑客/這裏的解決方法。如果客戶端禁用了JavaScript,它也會中斷您的應用程序。

+1

我很抱歉,但這不起作用。不知道,如果它沒有更多的支持或有點,但對我來說'字符串BT'總是'空' – 2014-01-04 17:15:51

+0

如果按鈕不是用來提交表單,它將是'null'。例如。當你仍然繼續使用'form.submit()'就像OP一樣。那麼就擺脫那部分。 – BalusC 2015-03-27 14:27:42

-3

您需要使用.toString()將button參數轉換爲String。你的代碼沒有問題。