PicNet / tablefilter

This js project adds column filtering capabilities to a regular html <table> by adding a row to the <thead> section of a table and adding filters that allows real time filtering of tabular data.
http://web.archive.org/web/20150124160820/http://www.picnet.com.au/picnet-table-filter.html
27 stars 9 forks source link

IE8/Script goes Unresponsive #10

Open robs67 opened 13 years ago

robs67 commented 13 years ago

I have a table with approx. 1,300 rows and 15 columns (nothing I can do at the moment about the size of the table despite my attempts to reign it in). Every browser with tableFilter works great except for IE. The organization runs IE8 and when the table is loading for about 15 seconds, an error dialog box pops up with the following: Stop running this script? A script on this page is causing your web browser to run slowly. If it continues to run, your computer might become unresponsive.

No matter if you click Yes or No, the tableFilter never loads and the browser freezes.

tableFilter is the only script running on this page.

Any help or direction would be most appreciated as tableFilter is extremely useful on a 1,300 row table.

henla464 commented 13 years ago

Hi Robs67,

Would it be possible for you to send me the table you are using? I'm currently testing a small rewrite of the tableFilter (not ready yet), perhaps it will work better...

Do you have filtering on all columns? I don't know if it makes a difference on the current tableFilter, but on the rewrite performance improve with fewer filtered columns.

robs67 commented 13 years ago

Hello,

Unfortunately the data is proprietary and behind a password protected site. Sorry about that.

I do have filtering on all 15 columns in the table. As far as rows, the table ebbs and flows between 800 and 1,600 rows.

-Robert

On Sun, Aug 21, 2011 at 8:26 AM, henla464 < reply@reply.github.com>wrote:

Hi Robs67,

Would it be possible for you to send me the table you are using? I'm currently testing a small rewrite of the tableFilter (not ready yet), perhaps it will work better...

Do you have filtering on all columns? I don't know if it makes a difference on the current tableFilter, but on the rewrite performance improve with fewer filtered columns.

Reply to this email directly or view it on GitHub: https://github.com/PicNet/tablefilter/issues/10#issuecomment-1862994

henla464 commented 13 years ago

Ok, I see. That is quite a lot of rows and columns... It would be great if you could test the rewrite. I added (temporary) links you can use to download the rewritten tablefilter.

http://laselase.onlinewebshop.net/demosrc.htm http://laselase.onlinewebshop.net/TableFilter.js http://laselase.onlinewebshop.net/jQueryPlugin.js http://laselase.onlinewebshop.net/jquery-1.6.2.min.js

robs67 commented 13 years ago

Wouldn't you know that the table in question is down to 200 rows. I will dummy up a table to try however, using archived data which should be upwards of 2,000 rows. I just need a couple of days. I have downloaded the files you provided. Thanks!

-Robert

On Tue, Aug 23, 2011 at 4:15 AM, henla464 < reply@reply.github.com>wrote:

Ok, I see. That is quite a lot of rows and columns... It would be great if you could test the rewrite. I added (temporary) links you can use to download the rewritten tablefilter.

http://laselase.onlinewebshop.net/demosrc.htm http://laselase.onlinewebshop.net/TableFilter.js http://laselase.onlinewebshop.net/jQueryPlugin.js http://laselase.onlinewebshop.net/jquery-1.6.2.min.js

Reply to this email directly or view it on GitHub: https://github.com/PicNet/tablefilter/issues/10#issuecomment-1877849

robs67 commented 13 years ago

I tested a table with 1,600 rows. I can get it to work in Firefox, but in IE I get the following error:

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Tablet PC 2.0) Timestamp: Mon, 29 Aug 2011 15:55:58 UTC

Message: 'columnName' is null or not an object Line: 356 Char: 4 Code: 0

-Robert

On Tue, Aug 23, 2011 at 4:15 AM, henla464 < reply@reply.github.com>wrote:

Ok, I see. That is quite a lot of rows and columns... It would be great if you could test the rewrite. I added (temporary) links you can use to download the rewritten tablefilter.

http://laselase.onlinewebshop.net/demosrc.htm http://laselase.onlinewebshop.net/TableFilter.js http://laselase.onlinewebshop.net/jQueryPlugin.js http://laselase.onlinewebshop.net/jquery-1.6.2.min.js

Reply to this email directly or view it on GitHub: https://github.com/PicNet/tablefilter/issues/10#issuecomment-1877849

henla464 commented 13 years ago

Hi,

Have a look at your the options class you pass to the tablefilter. Especially check that you don't have an extra comma at the end of the columnFilters list. I believe there was a bug in the example I sent you earlier. Also download http://laselase.onlinewebshop.net/TableFilter.js again, I fixed another IE bug (just don't know if that was before or after you downloaded it).

If you don't see the problem please post your options class and the table header.

robs67 commented 13 years ago

Ok, an extra comma was the culprit. We are getting closer. The script no longer stalls out in IE. 1,600 rows with filtering on 15 columns loads in about 25 seconds.

The issue I see now is with the ddl filtering. The values in the drop down list appear to be taking the values of a drop down two ddl coulmns to its left. So the only value in the first and second ddl will be "undefined" while the third ddl drop down will have the values of the first ddl column in its list. I triple-checked that all the columnName attributes are correct. I think it may have something to do with the format of the html code. For example I had this:

Some Value

and when I change it to this:

Some Value

the ddl values moved one to the left but were still incorrect. I played around with the code some more but could not get it to work.

I have Coldfusion code with many of the tags so if the issue is indeed with the formatting, that is an issue for me as it would make my code unreadable.

-Robert

On Mon, Aug 29, 2011 at 6:54 PM, henla464 < reply@reply.github.com>wrote:

Hi,

Have a look at your the options class you pass to the tablefilter. Especially check that you don't have an extra comma at the end of the columnFilters list. I believe there was a bug in the example I sent you earlier. Also download http://laselase.onlinewebshop.net/TableFilter.jsagain, I fixed another IE bug (just don't know if that was before or after you downloaded it).

If you don't see the problem please post your options class and the table header.

Reply to this email directly or view it on GitHub: https://github.com/PicNet/tablefilter/issues/10#issuecomment-1937247

henla464 commented 13 years ago

25 seconds is still long, is that only for tableFilter? How fast is it in Chrome?

I can't understand what is happening with your dropdowns... Is this only in IE8 or also in Firefox and Chrome?

I created this test page http://laselase.onlinewebshop.net/test.htm it works for me in IE8, Firefox and Chrome.

I think you will need to provide me with an example where this happens. Or at least post the options object and the table header. You could email it to laselase (a) gmail . com if you don't want to put it here. If we could also connect with IM that could help. Either using gtalk with the email address above, msn: lase (a) sverige . nu or on Skype where I use the same username as I do on github.

mazdak1222 commented 12 years ago

Hello,

I have the same problem with the table around 2000 records. I have tested my page on FireFox and Chrome and IE8. And I get this error only on IE8:

"A script on this page is causing your web browser to run slowly. If it continues to run, your computer might become unresponsive."

I have red above replies but I couldn't figure it out how this problem can be solved.

Thanks

mazdak1222 commented 12 years ago

No one?

henrikl commented 12 years ago

Does the cells in your tables contain html code? Before filtering, the tableFilter strips out the html and I found that this can be pretty slow... You can search for goog.dom.getTextContent if you want to modify this code yourself. Perhaps you could use the property innerText (IE) and textContent (other browsers) instead, should be much faster...

nahamit commented 12 years ago

I am having a similar issue with IE. I have a table with 3000 rows and 30 columns. I have filtering enabled on every column. IE is very very slow. It works fine with Firefox and Chrome.

Any help on IE???

msiewert commented 12 years ago

Anyone have a resolution to this? I have an application that is also experiencing the same behaviour in IE8 when retrieving a large number of rows. If I take the filtering out the error goes away so I am confident that it is the table filter plugin causing it. I tried using the files previously linked to in this post but doing so results in the filters not showing up at all.

Please help!