Spring + JQuery динамическое связывание - PullRequest
0 голосов
/ 28 марта 2011

Я новичок в весне и все еще учусь.Я хочу сделать более сложную обработку форм.

В настоящее время моя проблема связана с динамическим связыванием списков.

Я хочу иметь одно текстовое поле, один список и кнопку добавления.Какой сценарий?Пользователь заполняет текстовое поле (с автозаполнением) и нажимает кнопку добавления.После инициирования добавления действия список заполняется без отправки запроса на сервер.Пользователь добавляет еще несколько элементов в список, а затем отправляет форму на сервер.

В чем проблема?

Я не знаю, как связать список или передать динамические данные на сервер.

В настоящее время мне удалось получить ответ JSON от контроллера со списком для автозаполнения.

Подходят ли формы Spring для этой задачи?Как правильно это реализовать?

1 Ответ

1 голос
/ 28 марта 2011

Вот удар в том, что я думаю, вы пытаетесь достичь.Во-первых: я предполагаю, что проблема не в автозаполнении / добавлении в список, а в том, что делать со списком на стороне MVC.Допустим, у вашего командного объекта есть свойство «имена сотрудников», определенное как

List<String> getNames(){..}
void setNames(List<String>){..}

На стороне JSP вы определяете элементы списка форм следующим образом:

<form:form>
   <c:forEach items="${command.names}" var="name" varStatus="status">
     <form:input path="names[${status.index}]" />
   </c:forEach>
</form:form>

Реальный трюксделать его «динамическим» с помощью jQuery - это добавить в форму индекс следующего увеличения .Итак, где-то у вас есть:

<script type="text/javascript">
var count = ${fn:length(command.names)};
function addToList()
{
   // add to form with name to "names[count]"
   count++;
}
</script>

Собирая все это вместе, вы устанавливаете список в контроллере formBackingObject равным AutoPopulationList

Этого должно быть достаточно для начала работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...