views:

320

answers:

2

I'm looking for a jQuery plugin that either replaces or improves the HTML <select> tag in Internet Explorer 6.

Think of this situation:

<select name="test">
    <option>Apple</option>
    <option>Apricot</option>
    <option>Lemon</option>
    <option>Peach</option>
    <option>Pear</option>
    <option>Raspberry</option>
</select>

When in IE7 or later (or Firefox) you select the resulting select box and type "APR" you will select "Apricot", because it starts with APR.

In IE6 you end up at Raspberry, because at "A" it selects "Apple", then "P" -> "Peach" and finally R -> "Raspberry".

Now what my client is looking for is IE7 behaviour in IE6. Any chance that there is a plugin for jQuery that can save me from writing my own implementation of a select box?

I have found several, but they either lack sensible keyboard support altogether or they don't work with IE6.

(And: No, Updating to IE7 is not yet an option.)

+2  A: 

Why not eliminate the select box and implement an auto complete box? There are plenty of plugins for jQuery that handle auto complete. You could even store the values in the JavaScript the eliminate the need to go back to the server as the user types.

Doomspork
Actually that's what I'm currently suggesting to do them. I'm just looking for an option if they don't like that idea.
BlaM
+3  A: 

I would look into something like FlexBox, this might work for what your trying to accomplish.

Phill Pafford
FlexBox is very close to what I am looking for. It's performance with a high number of items (about 1000) is extremely bad though.
BlaM
(Yes, I could go the JSON only way, but it would not be possible to show the full list then)
BlaM
no way to break them up into small groups? maybe an ajax call query return based on the first letter entered?
Phill Pafford
I'm using FlexBox with a list of 10,000 items, and it is quite fast. Most likely, the delay is on the server side. As Phill Pafford suggested, filtering the list returned on every call is your best bet.
Noah Heldman