2010-11-04 2 views
0

Я использую java (Struts 1.2). Моя первая страница - это страница входа в систему. После успешного входа в систему отображается вторая страница. Вторая страница содержит форму, в которой одно из полей является полем со списком. Я хочу, чтобы этот комбинированный ящик был заполнен так, чтобы пользователь мог выбрать этот вариант.Java -Struts 1.2 комбобокс вопрос

Я пробовал много методов, например, с помощью html: коллекций опций и html: optionsCollections и т. Д., Но он показывает ошибки, такие как bean not found.

Может ли любой орган дать мне пример рабочего кода.

Благодаря

+0

Где вы получаете значения для заполнения combobox? База данных? Литературный список? –

+0

Литературный список. – pradeep

+0

Вы пробовали Google? Чтобы помочь вам, мне нужно будет узнать, к какой логике идет логин для отображения (и какие действия вызывают). –

ответ

0
<% 
List< LabelValueBean> hourList = new ArrayList<LabelValueBean>(); 
pageContext.setAttribute("hourList", hourList); 
%> 

<html:select property="endhour"> 
    <html:options collection="hourList" property="value" labelProperty="label" /> 
<html:select> 

Свойство на HTML: выберите это один в вашей форме, которая будет заполнена, когда пользователь выбирает что-то из выпадающего списка.

--- жаль не может отформатировать его, чтобы показать код ясно

+0

Где мне нужно написать этот код в классе действий формы входа (предыдущая страница) или класс действия страницы jsp, в которой будет отображаться поле со списком. Я попытался написать код в классе действия предыдущей страницы, но когда я использую атрибут say hourList на следующей странице, он показывает ошибку, как bean not found – pradeep

+0

код должен быть написан в вашем JSP. если вы посмотрите на это, вы увидите, что это скриптлет. Функция HourList (объект ArrayList) должна поступать из вашего компонента, возможно, с вашего сеанса или использовать вышеприведенный код и заполнять часовой список. Независимо от первой страницы (например, вы сказали страницу входа), вам нужно заполнить ваши компоненты, чтобы подготовиться к следующей странице. – mezzie

0

Использование тега HTML, необходимое, чтобы быть в HTML: форма и что оба они должны иметь соответствующий компонент, настроить его в struts.xml ,

<form-beans> 
    <form-bean name="LoginForm" 
     type="struts.forms.LoginForm" /> 
</form-beans> 

<action name="LoginForm" path="/logon" type="common.Logon" 
     parameter="cmd"> 
     <forward name="error" path="/html/login/login.jsp?login_error=1" /> 
     <forward name="success" path="/login.do" />    
</action> 
0

Что я могу сказать вам это:

  • После успешного входа в систему (через ваш LoginAction в этом примере), пусть ваши действия вперед к другому действию, которое будет заполнять список.
  • Заполняем список и сохранить его в запросе (например, так, request.setAttribute("contents", list). Теперь вперед страницу в файл JSP.
  • О файле JSP, вы должны читать ваши contents (как хранится в request.setAttribute методе) и сделать что-то этот эффект:

. Пример:

<html:select property="selectedValue"> 
    <html:options name="contents" /> 
</html:select> 

Более подробной информации о Struts HTML TagLib

Смежные вопросы