Форма с динамическими полями id и name - PullRequest
0 голосов
/ 31 марта 2011

У меня есть форма, которая выглядит следующим образом: cat1 [int field] cat2 [int field] cat3 [int field]

Дело в том, что мои категории каждый раз разные.Как мне справиться с этим в моем обработчике?

Не знаю, как мне установить мой метод получения / установки

Вот мой jsp:

    <jsp:useBean id="formHandler" scope="page" class="com.pipo.EditStatusMappingHandler"><%--
--%><jsp:setProperty name="formHandler" property="*" /><%--
--%></jsp:useBean>

<form action="jsp/form/mapStatus.jsp" method="POST" name='categoryForm'>     
        <ul>
        <foreach collection="<%= categorySet %>" type="Category" name="itCategory" >
           <li>
            <label for="<%= itCategory.getId() %>"><%= itCategory.getName(userLang) %></label>
            <input type="text" name="<%= itCategory.getId() %>" id="<%= itCategory.getId() %>"/>    
           </li>
        </foreach>
        </ul>
          <div class="modal-buttons buttons">
            <input style="text-align:right;" class='formButton mainButton'  type="submit"/>
    </form>

Я не знаю, что поставитьв моем обработчике, чтобы получить имя ввода = <% = itCategory.getId ()%>

Ответы [ 3 ]

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

Большинство веб-фреймворков Java поддерживают сопоставленные свойства (например, getCategoryValue(String categoryName) / setCategoryValue(String categoryName, Integer value)) или прямой доступ для чтения и записи к карте внутри компонента bean / action bean.

Не зная структуры, которую вывы используете и что вы подразумеваете под "обработчиком", трудно дать более точный ответ. "

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

Если вы используете Map<String, Data>, геттеры и сеттеры определены для вас.

Map<String, Data> map = new LinkedHashMap<String, Data>();
// set values.
map.put("field1", data1);
map.put("field2", data2);
// get values.
Data dataA = map.get("field1");
Data dataB = map.get("field2");
1 голос
/ 31 марта 2011

Лучший способ - использовать отражение в объекте формы, чтобы узнать поля категории и вызвать соответствующую операцию.

...