2010-05-26 45 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。你的代码没有问题。