Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Помогите разобраться с checkbox


Автор: Матильда 12.5.2009, 17:33
Доброго времени суток!

Помогите, пожалуйста, разобраться с чекбоксами. 

Я использую Struts 1. Есть jsp страница, на ней checkbox:

Код

        <logic:iterate id="row" name="ProjectsForm" property="rows" indexId="index">
        <tr>
           <td>
               <html:link action="/showProject" paramId="projectId" paramName="row" paramProperty="projectId">
                   <bean:write name="row" property="projectId"/>
               </html:link> <br>
               <html:checkbox name="row" value="projectId"  property="projectId"/>
            </td>
           <td><bean:write name="row" property="areaName"/></td>
           <td><bean:write name="row" property="address"/></td>
           <td><bean:write name="row" property="flat"/></td>
           <td><bean:write name="row" property="clientFio"/></td>
               ...



Как мне получить ID выбранных проектов?

на данный момент у меня написано следующее:

Код

      public ActionForward closeAll(ActionMapping mapping,    
              ActionForm form,
              HttpServletRequest request,
              HttpServletResponse response) throws Exception {

          if (request.getParameter("projectId") != null){     
          String[] projectsID = request.getParameterValues("projectId");
                ... 


но в projectsID вместо значений находится название поля - projectId. А как значения вытащить?

Заранее всем большое спасибо.    

Автор: goodday1941 12.5.2009, 17:55
если чекбокс зачекан то он попадает в реквест, в другом случае в реквесте нет параметра с неймом чекбокса

значением параметра чекбокса в реквесте будет валюе которое выставлено для данного чекбокса

Добавлено через 1 минуту и 58 секунд
то есть 
имея 
Код

<input name="a" type="checkbox" value="1" checked>

в реквесте будет параметр "a" со значением "1"

имея 
Код

<input name="a" type="checkbox" value="1" >

в реквесте параметра "а" не будет

Автор: Матильда 13.5.2009, 12:05
Значения я вытащила. Спасибо!

Но у меня еще один вопрос. У меня сейчас по умолчанию все элементы получаются чекнутые. А как сделать так, чтобы по умолчанию они все были не отмеченными?
 
Код

<input name="row" type="checkbox" value="<%= projectId %>" checked="checked"/>

Автор: goodday1941 13.5.2009, 12:19
checked="checked" - означает что элемент помечен

уберите этот атрибут и будет вам анчек

Автор: Матильда 13.5.2009, 18:15
Спасибо!

Автор: goodday1941 13.5.2009, 18:20
помечайте темы как решенные (в правом верхнем углу рожица недовольная )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)