By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,489 Members | 3,084 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,489 IT Pros & Developers. It's quick & easy.

Performance issue when dynamically populating a dropdownlist from a hidden frame

P: n/a
Wim
Hi Everyone,

I'm trying to speed up a Asp.net 1.1 applications' performance. The
application needs to run in an environment with little bandwith and
therefore pagesizes and roundtrip times shoud be brought back to a
minimum.

The application suffered from relatively large screens. A typical aspx
page was 500 Kbyte so page load times were in the order of 40 - 50
seconds. After unsufficient loading improvement using .net caching
techniques like outputcaching and partial caching (location=Client), I
went on the track of local (client-side) caching using hidden frames. I
furthermore changed the navigation (dropdown menu) to load the
userpages in another frame and added javascript to load the data from
the hidden frames into the controls. So far, a pretty standard
approach.

Some details of the pages and the loading techniques:
The data in the hidden frames is stored in javascript arrays (generated
on the server) and only needs to be posted once. The page loaded in the
hidden frame containing the data is about 200 KBytes. But the userpages
decreased about 70% or more in size!!!
To load the data into the dropdownlists I issue a client-side
parents.myframe.location="pagetoload.aspx" when the user selects "page
to load" from the menu. In "pagetoload.aspx" I stated an
onload="LoadControls()" in the form tag to populate the controls
automatically.

I hope somebody is still with me :-)

After several different approaches however, I cannot get the javascript
which loads the data to perform under 15 seconds, and of course I would
like to bring it back to 1 or 2 seconds.
The pages contain about 16 dropdownlists and some textboxes. Each
dropdownlist gets loaded with approximately 500 options, so we are
facing a load of about 8,000 options.

This brings me to my question: is the dynamic loading of dropdownlist
options in javascript given the number of options reasonable or can it
be done in much less time?
The way I add the options is pretty standard:

var Option = new Option
for (var i=0;i < parent.hiddenframe.arraywithtext.length; i++)
{
Option.Text = parent.hiddenframe.arraywithtext[i]
Option.Value = parent.hiddenframe.arraywithvalue[i]

parent.userframe.forms("LoadedPage").items("dropdo wnlist").Add(Option)
}

Is there a way to speed things up? I tried to disable the dropdownlist
while loading but that does not deliver too much improvement, if any at
all...

Thanks a lot for reading, hope somebody has an idea!
Wim

Nov 19 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Wim
Sorry wrong code, the new Option is of course placed inside the
for-loop....

Nov 19 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.