You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "Rainer Hermanns (JIRA)" <ji...@apache.org> on 2009/04/22 16:07:07 UTC
[jira] Resolved: (WW-2809) doubleselect ignores preselection of a
multiple subselect
[ https://issues.apache.org/struts/browse/WW-2809?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rainer Hermanns resolved WW-2809.
---------------------------------
Resolution: Fixed
Assignee: Rainer Hermanns
fixed in trunk
> doubleselect ignores preselection of a multiple subselect
> ---------------------------------------------------------
>
> Key: WW-2809
> URL: https://issues.apache.org/struts/browse/WW-2809
> Project: Struts 2
> Issue Type: Bug
> Affects Versions: 2.1.2
> Reporter: Markus Katz
> Assignee: Rainer Hermanns
> Priority: Minor
> Fix For: 2.1.7
>
> Attachments: doubleselect.ftl
>
>
> template/simple/doubleselect.ftl contains the following snippet to preselect the subselection:
> for (i = 0; i < ${parameters.id}Group[x].length; i++) {
> ${parameters.id}Temp.options[i] = new Option(${parameters.id}Group[x][i].text, ${parameters.id}Group[x][i].value);
> <#if parameters.doubleNameValue?exists>
> if (${parameters.id}Temp.options[i].value == '${parameters.doubleNameValue}') {
> ${parameters.id}Temp.options[i].selected = true;
> selected = true;
> }
> </#if>
> }
> In the case of a multiple subselect the doubleNameValue is a collection of ids. In this case the single ...Temp.options[i].value is compared to a collection object which fails for all items.
> I´d suggest a patch like:
> for (i = 0; i < ${parameters.id}Group[x].length; i++) {
> ${parameters.id}Temp.options[i] = new Option(${parameters.id}Group[x][i].text, ${parameters.id}Group[x][i].value);
> <#if parameters.doubleNameValue?exists>
> <#if parameters.doubleMultiple?exists>
> for (j = 0; j < ${parameters.doubleNameValue}.length; j++) {
> if (${parameters.id}Temp.options[i].value == ${parameters.doubleNameValue}[j]) {
> ${parameters.id}Temp.options[i].selected = true;
> selected = true;
> }
> }
> <#else>
> if (${parameters.id}Temp.options[i].value == '${parameters.doubleNameValue}') {
> ${parameters.id}Temp.options[i].selected = true;
> selected = true;
> }
> </#if>
> </#if>
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.