Я пробовал хорошие два часа и до сих пор не получаю результатов. У меня есть такой HTML-код внутри файла test.jsp
<input type ="submit" name="watch" value="Edit" id="edit"></input>
<input type ="submit" name="case" value="Edit" id="editt"></input>
Затем у меня есть форма, которая при нажатии любой из кнопок выше появляется с помощью jquery
<form action="servlet.jsp" method="post">
<fieldset>
<label for="Name">Name</label>
<input type="text" name="name" id="name" value=""><br>
<label for="Price">Price</label>
<input type="text" name="Price" id="price" value=""><br>
</fieldset>
</form>
И мой JSP состоит из
<% String param = request.getParameter("watch"); %>
<% String param2 = request.getParameter("case"); %>
Поэтому в основном у меня есть две кнопки редактирования, в зависимости от которой нажата кнопка редактирования, она должна предварительно заполнить значения формы. На данный момент у меня есть значения формы как "", потому что мой getParameter
всегда появляется как null, независимо от того, какую кнопку я getParameter
.
Я пробовал следующий код с точки зрения проверки, является ли значение NULL, а затем что-то делать, если они не являются и т.д., Но оба возвращают значение null, независимо от кнопки
if(param !=null){
//assign variables and populate with data x
}
//and so on
Поэтому мой вопрос: во-первых, правильно ли я получаю параметр. И во-вторых, если да, то любые идеи, почему я получаю оба этих параметра как null, независимо от того, какую кнопку отправки я нажимаю.
Прежде всего, ввод является закрывающим тегом. Это означает, что вы закрываете его пробелом, за которым следует />
не с </input>
:
<input type="submit" name="watch" value="Edit" id="edit" />
<input type="submit" name="case" value="Edit" id="editt" />
Это, наверное, проблема. После этого изменения ваш код может очень хорошо работать. Но я бы отметил, что было бы проще назвать обе кнопки одинаковыми и дать им разные значения, потому что вам нужно только прочитать их и включить значение:
<input type="submit" name="submit" value="Edit X" id="edit" />
<input type="submit" name="submit" value="Edit Y" id="editt" />
Затем в сервлет или другой JSP:
String button = request.getParameter("submit");
if(button == null)
{
out.print("no form was submitted");
return;
}
else if("Edit X".equals(button))
{
out.print("button 1 was pressed");
return;
}
else if("Edit Y".equals(button))
{
out.print("button 2 was pressed");
return;
}
Любая вероятность вашего JSP должна быть:
<% String param = request.getParameter("edit"); %>
<% String param2 = request.getParameter("editt"); %>