Hi,
I just add a <br> at line 51 of checkboxlist.ftl
<label for="${parameters.name?html}-${itemCount}"
class="checkboxLabel">${itemValue?html}</label><br>
Thanks,
Nuwan
Jim Kiley wrote:
It is remarkably easy to extend the 'simple' or 'xhtml' themes to make
s:checkboxlist display vertically. Here's how I did it:
In the root of my web code I have a 'template' folder. Within 'template' I
have a folder named 'my'. Inside 'my' I have checkboxlist.ftl.
checkboxlist.ftl looks like this (minus the license boilerplate):
<#assign itemCount = 0/>
<#if parameters.list?exists>
<@s.iterator value="parameters.list">
<#assign itemCount = itemCount + 1/>
<#if parameters.listKey?exists>
<#assign itemKey = stack.findValue(parameters.listKey)/>
<#else>
<#assign itemKey = stack.findValue('top')/>
</#if>
<#if parameters.listValue?exists>
<#assign itemValue = stack.findString(parameters.listValue)/>
<#else>
<#assign itemValue = stack.findString('top')/>
</#if>
<#assign itemKeyStr=itemKey.toString() />
<tr><td><input type="checkbox" name="${parameters.name?html}"
value="${itemKeyStr?html}" id="${parameters.name?html}-${itemCount}"<#rt/>
<#if tag.contains(parameters.nameValue, itemKey)>
checked="checked"<#rt/>
</#if>
<#if parameters.disabled?default(false)>
disabled="disabled"<#rt/>
</#if>
<#if parameters.title?exists>
title="${parameters.title?html}"<#rt/>
</#if>
<#include "/${parameters.templateDir}/simple/scripting-events.ftl"
/>
<#include "/${parameters.templateDir}/simple/common-attributes.ftl"
/>
/>
</td><td><label for="${parameters.name?html}-${itemCount}"
class="checkboxLabel">${itemValue?html}</label></td></tr>
</@s.iterator>
<#else>
</#if>
This is probably not the ideal way to do this, but it works great for me.
jk
On Tue, Jul 1, 2008 at 12:33 PM, David Ogasawara <[EMAIL PROTECTED]>
wrote:
This is exactly what I needed. I was avoiding checkboxlist because I
wanted the options to be displayed vertically, but it looks to be the
only option unless I add more code to determine if a checkbox was
selected.
Thank you, everyone, for your help!!!
-----Original Message-----
From: Nuwan Chandrasoma [mailto:[EMAIL PROTECTED]
Sent: Tuesday, July 01, 2008 9:16 AM
To: Struts Users Mailing List
Subject: Re: [S2] Pre-populating Checkboxes
Hi,
I have done it like this.
// code in my action
private String[] skill;
public String[] getSkill() {
return skill;
}
public void setSkill(String[] skill) {
this.skill = skill;
}
public void prepare() throws Exception {
skills = new ArrayList();
skills.add("Java");
skills.add("C#");
skills.add("Spring");
skills.add("Struts 2");
skill = new String [2];
skill[0] = "Java";
skill[1] = "Spring";
}
//jsp
<s:checkboxlist name="skill" list="skills"/>
Java and Spring check boxes will be selected.
Thanks,
Nuwan
David Ogasawara wrote:
Hi,
Thank you very much for your assistance, but I am already able to
display the checkboxes. I guess my question wasn't very clear. I
need
to know how to redisplay the checked boxes a user selected in a
previous
session. So if there are five check boxes and the user selects three
of
them and submits the form, how do I automatically check the three
boxes
when the user returns the next day? It appears that returning a
string
array with the users selections is not working.
Thanks,
Dave
-----Original Message-----
From: Nuwan Chandrasoma [mailto:[EMAIL PROTECTED]
Sent: Monday, June 30, 2008 9:57 PM
To: Struts Users Mailing List
Subject: Re: [S2] Pre-populating Checkboxes
Hi,
This is how i do it, i have implemented the prepreable interface in my
action and in prepare method, i populate the list i wanted to display
in
as check box values.
eg:-
private List skills;
public List getSkills() {
return skills;
}
public void prepare() throws Exception {
skills = new ArrayList();
skills.add("Java");
skills.add("C#");
skills.add("Spring");
skills.add("Struts 2");
}
in jsp i have this tag and which will render 4 check boxes.
<s:checkboxlist name="skill" list="skills"/>
Thanks,
Nuwan
David Ogasawara wrote:
Hello,
I'm new to Struts 2 and I was wondering how to pre-populate
checkboxes
with values from a database (or even hard-coded values). I am
iterating
through an arraylist of hashmaps (description, type_cd) to create the
checkboxes in the form. I then create a string array with the values
from a database to pre-populate, but it's not working.
* When the checkboxes are checked and the form is submitted, I am
able
to capture the values (String array) properly.
JSP:
<s:iterator value="all_type_codes">
<s:checkbox name="type_cd" fieldValue="%{type_cd}"/>
<s:property value="description"/>
<br>
</s:iterator>
Action Page:
public String[] getType_cd() {
return type_cd;
}
public void setType_cd(String[] type_cd) {
this.type_cd = type_cd;
}
// this is a test
// these are the options the user selected in a previous session
type_cd = new String[3];
type_cd[0] = "EQ";
type_cd[1] = "SF";
type_cd[2] = "SS";
Any help would be greatly appreciated!
-Dave
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]