Hello Telerik,
The environment:
- I created a form with a RadGrid with 3 levels
- The third level (the question) has a user control that has a RadioButtonList
- The second level (the sub-section) has a RadioButtonList that looks like the other one, to change the value of all the radios in this sub-section
- The first level (the section) just shows the titles
- Screen shot: Here
- The form used has 53 controls, each one of them has a RadioButtonList with 6 options, a RadTextBox and a HiddenField. They are divided in 18 sections, and the header of those sections has also a RadioButtonList with 6 options each. That's a total of 71 RadioBoxLists and 426 radios.
Now, the problem:
- When clicking in any radio in the third level, the CPU of the client goes to 100% for around 1 second. With a slower computer, it goes up to 3 seconds.
- When clicking the radio in the sub-section, it takes a real long time to change the indexes from the inside radios. In a good client computer, around 10 seconds, and up to 30 seconds in a slower one. The following JavaScript function is used:
- It is much faster when using Firefox than Internet Explorer, but Firefox is still really slow.
Finally, the questions:
- Is it possible to improve the performance, or should I just forget using the form decorator?
- The decorator is in my master page. Is it possible to turn it off for a single section?
Thank you very much,
Daniel Schiavini
The environment:
- I created a form with a RadGrid with 3 levels
- The third level (the question) has a user control that has a RadioButtonList
- The second level (the sub-section) has a RadioButtonList that looks like the other one, to change the value of all the radios in this sub-section
- The first level (the section) just shows the titles
- Screen shot: Here
- The form used has 53 controls, each one of them has a RadioButtonList with 6 options, a RadTextBox and a HiddenField. They are divided in 18 sections, and the header of those sections has also a RadioButtonList with 6 options each. That's a total of 71 RadioBoxLists and 426 radios.
Now, the problem:
- When clicking in any radio in the third level, the CPU of the client goes to 100% for around 1 second. With a slower computer, it goes up to 3 seconds.
- When clicking the radio in the sub-section, it takes a real long time to change the indexes from the inside radios. In a good client computer, around 10 seconds, and up to 30 seconds in a slower one. The following JavaScript function is used:
function ChangeChildScores(QuestionID, ItemIndex, OwnerTableViewID) { |
var OwnerTableView = document.getElementById(OwnerTableViewID); // The whole table |
var parentTable = OwnerTableView.getElementsByTagName('table')[ItemIndex]; // The table with the questions |
var TRs = parentTable.getElementsByTagName('tr'); // TR for each question |
for (var r = 0; r < TRs.length; r++) { |
var inputs = TRs[r].getElementsByTagName('input'); // Radio boxes |
for (var i = 0; i < inputs.length; i++) { |
if (inputs[i].type == 'radio' && inputs[i].value == QuestionID) { // Checking the radio if the ID is correct |
inputs[i].checked = true; |
} |
} |
} |
} |
Finally, the questions:
- Is it possible to improve the performance, or should I just forget using the form decorator?
- The decorator is in my master page. Is it possible to turn it off for a single section?
Thank you very much,
Daniel Schiavini