使表单按钮改变当前页面的显示

时间:2011-12-08 02:07:19

标签: html sql jsp

原谅我,我之前从未使用过jsp,并且对html的知识也很有限。

我想要的是一个表单按钮,它将从表单中获取输入并在SQL查询中使用它,并在按下按钮时显示一个包含查询结果的表。

我有一些我用过的示例代码,但我无法弄清楚如何让按钮的操作在当前页面上创建一个表。

在我体内,我有:

<form action="demo.jsp" method="post">
    <table>
        <tr>
            <td> Which country?</td>
            <td><input type='text' name='country' value="${country}"></td>
        </tr>
        <tr>
            <td></td>
            <td><input type='submit' name='action2' value='Search'>
        </tr>
    </table>
</form>

然后我在外面:

<c:if test="${param.action == 'Search'}">
    <table border='1'>
        <tr>
            <th>Year</th>
            <th>Country</th>
            <th>Position</th>
        </tr>

        <sql:query var="QryCountry">
            Select *
            from db.TEAM
            where country = ?
                <sql:param value="${country}" />
        </sql:query>
        <c:forEach var="row" items="${QryCountry.rows}">
                <tr>
                    <td><c:out value="${row.team_year}" /></td>
                    <td><c:out value="${row.country}" /></td>
                    <td><c:out value="${row.position}" /></td>
                </tr>
        </c:forEach>
        <c:set var="country" value="" />
    </table>
</c:if>

但按下按钮似乎没有做任何事情。有什么建议?如果有必要,我很乐意澄清任何事情。

1 个答案:

答案 0 :(得分:1)

纠正我如果我错了。在代码片段中查看<c:if/>表达式,它应该是

<c:if test="${param.action2 == 'Search'}">