Пружинящая форма:Отправка дополнительного параметра на кнопках отправки

StackOverflow https://stackoverflow.com/questions/1883977

Вопрос

Я работаю над формой с набором критериев отбора, которые будут генерировать отчет при отправке формы.У меня также есть несколько различных отчетов, которые могут быть сгенерированы по этим же критериям, и я хочу, чтобы тип отчета можно было выбирать с помощью системы вкладок, где при нажатии на каждую вкладку отправляется форма и генерируется правильный отчет.Я должен был сделать это, передав дополнительный параметр в форму, чтобы переключиться на правильный тип формы

Я новичок в Spring, и под руководством старейшины мне было сказано использовать кнопку ввода для каждой вкладки со следующим приблизительным синтаксисом:

<input type="submit" name="${form.selectionValues.tabSelection}" value="1" />

Свойство формы tabSelection объекта SelectionValues не задается.Я не был удивлен ;) Не думал, что это сработает.

Итак, мне интересно, как я могу отправить сообщение обратно с кнопки в Spring, содержащей значения формы плюс дополнительный параметр tabSelection и значение?Как я должен разметить этот механизм?Должен ли я что-либо сделать с контроллером формы, чтобы зарегистрировать этот дополнительный параметр?

Исходная разметка, которую я использовал для создания этой страницы, использовала HTML-теги привязки вместо кнопок для ссылок на вкладки, что было бы намного лучше для CSS, есть ли какой-нибудь способ запустить полную отправку формы с использованием привязки href?Я знаю, что это будет запрос GET вместо POST и не связанный с формой..так что я не ожидаю, что это сработает..просто пытаюсь придумать решения!Я бы предпочел использовать предварительную разметку, так как там есть стили.

Будем признательны за любую помощь

Это было полезно?

Решение

если тег spring form используется подобным образом, то пример работает следующим образом:

<form:form commandName="someCommand">
    ...
    <input type="submit" name="${someCommand.selectionValues.tabSelection}" value="1"/> 
</form:form>

${} не является полем привязки, поэтому вам нужно использовать объект command как обычный объект модели.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top