1

我的页面上有这样的表格

<form action="ToolbarAction.do" method="POST">
    <div id="toolbar"
        class="ui-widget-header ui-corner-all ui-widget-content">
        <input style="font-family: times new roman;" type="button" id="item0"
            value="<fmt:message key='main'/>" /> <input
            style="font-family: times new roman;" type="button" id="item1"
            value="<fmt:message key='prices'/>" />
        <c:choose>
            <c:when test="${enterAttr == false || enterAttr == null }">
                <input style="font-family: times new roman;" type="submit"
                    id="item2" value="<fmt:message key='book'/>" />
            </c:when>
            <c:when test="${enterAttr == true }">
                <input style="font-family: times new roman;" type="submit"
                    id="item2" value="<fmt:message key='check'/>" />
            </c:when>
        </c:choose>
        <input style="font-family: times new roman;" type="submit" id="item3"
            value="<fmt:message key='contacts'/>" /> <input
            style="font-family: times new roman;" type="submit" id="item4"
            value="<fmt:message key='service'/>" />
    </div>
</form>

如何检查按下了哪个按钮并导致了 ToolbarAction?execToolbarAction 类中的Here方法。我应该从 HttpServletRequest 获取一些参数吗?

public String exec(HttpServletRequest req, HttpServletResponse resp) {
    // TODO Auto-generated method stub
    return null;
}
4

1 回答 1

1

name解决方案是为所有<input>元素赋予相同的属性。

<input name="submit" style="font-family: times new roman;" type="submit"
                id="item2" value="<fmt:message key='check'/>" />

由于用户对于每个请求只能按下一个提交按钮,因此您将有一个名为 的请求参数submit。你可以像这样检索它

String value = request.getParameter("submit");

request对象在哪里HttpServletRequest。的返回值getParameter是元素的value属性。<input>你可以做一堆 if 检查来看看哪个被按下了。

于 2013-07-25T15:00:04.543 回答