Я создаю регистрационную форму, содержащую две кнопки отправки. Мне нужно знать, какая кнопка нажата в форме в моем сервлет-коде?
Как узнать, какая кнопка HTML была нажата в моем сервлете?
Ответ 1
Прочитайте ответы на этот вопрос.
Итак, в
String button1 = request.getParameter("button1");
String button2 = request.getParameter("button2");
значение, которое не является нулевым, - это нажатая кнопка.
Или, если вы хотите использовать одно и то же имя для двух кнопок, вы можете установить другое значение
<input type="submit" name="act" value="delete"/>
<input type="submit" name="act" value="update"/>
Тогда
String act = request.getParameter("act");
if (act == null) {
//no button has been selected
} else if (act.equals("delete")) {
//delete button was pressed
} else if (act.equals("update")) {
//update button was pressed
} else {
//someone has altered the HTML and sent a different value!
}
Ответ 2
Только нажатая кнопка будет успешным.
<input type="submit" name="action" value="Something">
<input type="submit" name="action" value="Something Else">
Затем, на стороне сервера, проверьте значение данных действия.
Ответ 3
Использовать этот код...
В файле JSP...
<form action="MyServ">
<input type="submit" name="btn1" value="OK">
<input type="submit" name="btn2" value="OK">
</form>
В файле сервлета.
if (request.getParameter("btn1") != null){
// do something
}
else if (request.getParameter("btn2") != null){
// do something
}
Ответ 4
Вы можете добавить скрытое поле в форму, и когда пользователь нажимает кнопку, установите его значение в "btn1" или "btn2", используя javascript перед sumbit.
Приветствия:)