You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by "Blas Rodriguez Somoza (JIRA)" <ji...@apache.org> on 2010/04/21 20:14:52 UTC

[jira] Updated: (OFBIZ-3737) XHTML Validation - Form Widget with type= list|multi and inner form renders bad markup with visible effects

     [ https://issues.apache.org/jira/browse/OFBIZ-3737?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Blas Rodriguez Somoza updated OFBIZ-3737:
-----------------------------------------

    Attachment: OFBIZ-3732_before.jpg
                OFBIZ-3732_after.jpg

> XHTML Validation - Form Widget with type= list|multi and inner form renders bad markup with visible effects
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: OFBIZ-3737
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-3737
>             Project: OFBiz
>          Issue Type: Sub-task
>          Components: framework
>    Affects Versions: SVN trunk
>            Reporter: Blas Rodriguez Somoza
>            Priority: Minor
>             Fix For: SVN trunk
>
>         Attachments: OFBIZ-3732_after.jpg, OFBIZ-3732_before.jpg
>
>
> The markup rendered for form widgets with inner fields are (this is the rows sample, but the header is the same):
> 1.- With separate columns == true (wrong render)
> * <td....>  generated by macro renderFormatItem{color:red} RowFormCell{color}Open
> ** <form ....>
> ** <input .../>
> ** <input .../>
> ** <td> generated by macro renderFormatItem{color:red}RowCell{color}Open
> *** cell content 1
> ** </td> generated by renderFormatItem{color:red}RowCell{color}Close
> ** <td> generated by macro renderFormatItem{color:red}RowCell{color}Open
> *** cell content 2
> ** </td> generated by renderFormatItem{color:red}RowCell{color}Close
> *** ... 
> ** </form>
> * </td>generated by renderFormatItem{color:red}RowFormCell{color}Close
> 2.- With separateColumns == false (renders OK)
> * <td....>  generated by macro renderFormatItem{color:red}RowFormCell{color}Open
> ** <form ....>
> ** <input .../>
> ** <input .../>
> *** cell content 1
> *** cell content 2
> *** ... 
> ** </form>
> * </td>generated by renderFormatItem{color:red} RowFormCell{color}Close
> The render with separate columns is not only invalid from html POV, but also have a visible effect (see screenshots)
> In the screenshot can be seen a ghost column, which is generated by the browser parser when it closes the unclosed initial td.
> The solution is 
> * Change the RowFormCell macros to render nothing in html
> * Modify the code to add open and close of {color:red}RowCell{color} when separateColumns is false
> Although this patch don't solve the issue about form being inside tr, it simplifies the problem and avoid the visual effects.
> The new rendering will be:
> When separateColumns == true (removed ItemRowFormCell macros)
> ** <form ....>
> ** <input .../>
> ** <input .../>
> ** <td> generated by macro renderFormatItem{color:red}RowCell{color}Open
> *** cell content 1
> ** </td> generated by renderFormatItem{color:red}RowCell{color}Close
> ** <td> generated by macro renderFormatItem{color:red}RowCell{color}Open
> *** cell content 2
> ** </td> generated by renderFormatItem{color:red}RowCell{color}Close
> *** ...
> ** </form>
> When separateColumns == false (replaced ItemRowFormCell macros with ItemRowCell)
> ** <form ....>
> ** <input .../>
> ** <input .../>
> ** <td> generated by macro renderFormatItem{color:red}RowCell{color}Open  (Changed)
> *** cell content 1
> *** cell content 2
> *** ...
> ** </td> generated by renderFormatItem{color:red}RowCell{color}Close (Changed)
> ** </form>
> Tested with ff 3.5 Opera 10 Chrome 4.1 and IE 7

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.