我正在尝试使用JSP创建在线考试。我想逐个问题并在屏幕上显示它们,并创建一个“下一步”按钮,然后用户可以看到下一个问题,但问题是我不知道如何找出用户有单击“下一步”按钮,我知道如何在PHP中执行此操作:
if($_SERVER['REQUEST_METHOD']=='GET')
if($_GET['action']=='Next')
但我不知道如何在JSP中执行此操作。请帮我 这是我的代码:
String result = "";
if (database.DatabaseManager.getInstance().connectionOK()) {
database.SQLSelectStatement sqlselect = new database.SQLSelectStatement("question", "question", "0");
ResultSet _userExist = sqlselect.executeWithNoCondition();
ResultSetMetaData rsm = _userExist.getMetaData();
result+="<form method='post'>";
result += "<table border=2>";
for (int i = 0; i < rsm.getColumnCount(); i++) {
result += "<th>" + rsm.getColumnName(i + 1) + "</th>";
}
if (_userExist.next()) {
result += "<tr>";
result += "<td>" + _userExist.getInt(1) + "</td>";
result += "<td>" + _userExist.getString(2) + "</td>";
result += "</tr>";
result += "<tr>";
result += "<tr> <td colspan='2'>asdas</td></tr>";
result += "</tr>";
}
result += "</table>";
result+="<input type='submit' value='next' name='next'/></form>";
}
答案 0 :(得分:1)
所有涉及的HTML输入元素的名称 - 值对可用作请求参数。
<input type="submit" name="action" value="prev">
<input type="submit" name="action" value="next">
与
String action = request.getParameter("action");
if ("prev".equals(action)) {
// Prev button pressed.
} else if ("next".equals(action)) {
// Next button pressed.
}
或者,
<input type="submit" name="prev" value="prev">
<input type="submit" name="next" value="next">
与
if (request.getParameter("prev") != null) {
// Prev button pressed.
} else if (request.getParameter("next") != null) {
// Next button pressed.
}
也就是说,模板文本属于JSP文件,而不属于Servlet类。我建议让自己通过those tutorials来学习如何以正确的方式使用JSP / Servlet / MVC / JDBC进行编程。