[ 
https://issues.apache.org/jira/browse/WW-3792?focusedWorklogId=1048035&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-1048035
 ]

ASF GitHub Bot logged work on WW-3792:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 17/Oct/26 14:02
            Start Date: 17/Oct/26 14:02
    Worklog Time Spent: 10m 
      Work Description: lukaszlenart opened a new pull request, #2041:
URL: https://github.com/apache/struts/pull/2041

   Relates to [WW-3792](https://issues.apache.org/jira/browse/WW-3792)
   
   ## Summary
   
   WW-3792 reports that under `css_xhtml` a `<s:checkbox labelposition="left">` 
wraps its label and control in `<span>`, while other controls use `<div>`. That 
is not checkbox-specific: every `css_xhtml` control uses `<div>` only for 
`labelPosition="top"` (the default) and `<span>` otherwise — see 
`controlheader-core.ftl` / `controlheader.ftl`. A textfield at `left` renders 
the same spans, and did so in 2.3.1.2 as well.
   
   This PR is test-only. It renders a textfield and a checkbox, both 
`css_xhtml` with `labelPosition="left"`, and asserts their `wwlbl_*` and 
`wwctrl_*` wrappers use the same element, so the checkbox template stays in 
step with the other controls.
   
   ## Verification
   
   - `CheckboxTest`: 22/22 pass on current code.
   - With the checkbox's left-label wrapper in `css_xhtml/checkbox.ftl` changed 
from `<span` to `<div`, the new test fails with `expected:<[span]> but 
was:<[div]>`.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   




Issue Time Tracking
-------------------

            Worklog Id:     (was: 1048035)
    Remaining Estimate: 0h
            Time Spent: 10m

> s:checkbox (org.apache.struts2.components.Checkbox) generates span instead of 
> div when using labelposition="left"
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: WW-3792
>                 URL: https://issues.apache.org/jira/browse/WW-3792
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Core Actions
>    Affects Versions: 2.3.1.2
>         Environment: Tomcat 6 / JDK 1.5
>            Reporter: emmanuelg
>            Assignee: Lukasz Lenart
>            Priority: Major
>             Fix For: 7.5.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> When using theme="css_xhtml", most of components 
> (s:textfield,s:textarea,s:radio,s:select) generate code like that :
> <div class="wwgrp">           
>                       <div class="wwlbl">                             
>                               <LABEL>                         
>                       </div>
>                       <div class="wwctrl" >
>                               <Component = input or select or textarea>       
>                         
>                       </div>
> </div>
> Wheras if you use s:checkbox with labelposition="left" it generates something 
> like that (span instead of div) :
> <s:checkbox key="myKeyValue" labelposition="left"  />
> generates :
> <div class="wwgrp">           
>                       <span class="wwlbl">                            
>                               <LABEL>                         
>                       </span>
>                       <span class="wwctrl" >
>                               <Component = input or select or textarea>       
>                         
>                       </span>
> </div>
> When you use css_xhtml and a css to display a form, this is a real problem.
> As a workaround, you have to display checkbox using parentThem=simple, and 
> generate div by yourself.
> Maybe this problem is due to the fact that by default, all component have :
> - label at left
> - value at right 
> Expect for checkbox that has :
> - label at right
> - value at left



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to