[
https://issues.apache.org/jira/browse/TAPESTRY-1309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jesse Kuhnert updated TAPESTRY-1309:
------------------------------------
Fix Version/s: 4.1.2
> clearValidationDecorations in validation.js has huge performance issues with
> many form elements
> -----------------------------------------------------------------------------------------------
>
> Key: TAPESTRY-1309
> URL: https://issues.apache.org/jira/browse/TAPESTRY-1309
> Project: Tapestry
> Issue Type: Bug
> Components: JavaScript
> Affects Versions: 4.1.2
> Environment: Win IE6, IE7, FF1.5(mac os x) and Safari(mac os x)
> Reporter: Anna Vo
> Fix For: 4.1.2
>
>
> In validation.js this method causes performances issues in IE6, IE7,
> FF1.5(mac) and Safari if you have around 4000 or more checkboxes within the
> form (in the case of adding and removing category tree nodes). This was not
> an issue with Tapestry 4.0.2.
> /**
> * Clears out previous css classes set on fields
> * in error.
> */
> clearValidationDecorations:function(form, props){
> for (var i=0; i< form.elements.length; i++) {
> if (dj_undef("type", form.elements[i]) || typeof
> form.elements[i].type == "undefined"
> || form.elements[i].type == "submit"
> || form.elements[i].type == "hidden") {
> continue; }
>
> dojo.html.removeClass(form.elements[i],
> this.missingClass);
> dojo.html.removeClass(form.elements[i],
> this.invalidClass);
> }
> },
> The performance issues that we found:
> IE6/7 - browser locks up with hour glass for close to 3 minutes before it
> hits the listener method
> Safari - browser locks up and eventually quits
> FF (mac) - long running script processing prompt that asks to continue or
> stop script
> When we commented this method out the performance issues went away. We also
> tried adding || form.elements[i].type == "checkbox" to the continue statement
> which worked but was still slower than usability testing allows.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]