вопрос по struts-тэгу html:select

Модератор: Absurd

Ответить
Kate
Сообщения: 3
Зарегистрирован: 20 окт 2004, 11:00

Задача состоит в следующем:
Из базы считывается некий список, назовем его aaaList, типа collection.
Этот список должен отображаться в выпадающем списке select

реализовано это так:

<html:select property="aaa">
<logic:iterate id="list" property="aaaList" name="SearchForm">
<option value="<bean:write name='list' property='name' />">
<bean:write name='list' property='name' />
</option>
</logic:iterate>
</html:select>

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


Я попробовала написать так:

<html:select property="aaa">
<html :o ptions name="SearchForm" property="aaaList"/>
</html:select>

Но в этом случае все пункты отображаются в виде объектов, т.е. aaa@a90b

Подскажите, пожалуйста, как отобразить список так, чтобы после поиска выбрана была позиция по которой поиск производился.

Спасибо.
Deady
Сообщения: 193
Зарегистрирован: 17 фев 2004, 13:13
Откуда: Москва
Контактная информация:

обойтись без bean-ов
если это в jsp:
String selected = getSelectedItemName();
затем: <option value="<bean:write name='list' property='name' />"> меняешь на
<option value="name>" <% if (selected.equals(name)) out.print("SELECTED") %>>. Эту строчку прогоняешь в цикле по всем значениям параметра name.
Kate
Сообщения: 3
Зарегистрирован: 20 окт 2004, 11:00

Спасибо, но это не то.
Меня интересует как это реализовать используя технологию Struts.
А с бинами или без них, но без Struts, это реализуется просто.
nikola661
Сообщения: 1
Зарегистрирован: 12 дек 2007, 03:53

Kate писал(а):Задача состоит в следующем:
Из базы считывается некий список, назовем его aaaList, типа collection.
Этот список должен отображаться в выпадающем списке select

реализовано это так:

<html:select property="aaa">
<logic:iterate id="list" property="aaaList" name="SearchForm">
<option value="<bean:write name='list' property='name' />">
<bean:write name='list' property='name' />
</option>
</logic:iterate>
</html:select>

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


Я попробовала написать так:

<html:select property="aaa">
<html :o ptions name="SearchForm" property="aaaList"/>
</html:select>

Но в этом случае все пункты отображаются в виде объектов, т.е. aaa@a90b

Подскажите, пожалуйста, как отобразить список так, чтобы после поиска выбрана была позиция по которой поиск производился.

Спасибо.
Помогите разобраться!!! :confused:
Есть бин estimates который я создал в Action вот так:

Код: Выделить всё

List estimates = new ArrayList();
        
        con.executeQuery("select * from estimate order by id_estimate");
        ResultSet rset = con.getRes();
        while (rset.next()) {
            Estimate estimate = new Estimate();
            estimate.setId_estimate(rset.getInt(1));
            estimate.setEst_name(rset.getString(2));
            estimates.add(estimate);
        }
        request.setAttribute("estimates",estimates);
т.е. тут создается лист и в него запихиваются объекты.
Объекты это класс:

Код: Выделить всё

public class Estimate implements Serializable{
    private int id_estimate;
    private String est_name;

    public int getId_estimate() {
        return id_estimate;
    }

    public void setId_estimate(int id_estimate) {
        this.id_estimate = id_estimate;
    }

    public String getEst_name() {
        return est_name;
    }

    public void setEst_name(String est_name) {
        this.est_name = est_name;
    }
}
Как его можно на JSP вывести в select при помощи option, options, optionsCollection. Как прописать эти теги??
Ответить