2011-08-18 16 views
25

HTML:चयन के शीर्ष करने के खाली विकल्प जोड़ें और यह IE में चयनित विकल्प बनाने

<select id="dropdown"> 
    <option value="volvo">Volvo</option> 
    <option value="saab">Saab</option> 
    <option value="mercedes">Mercedes</option> 
    <option value="audi">Audi</option> 
</select> 

jQuery:

$("#dropdown").prepend("<option value='' selected='selected'></option>"); 

जब मैं Firefox या Chrome में इस चलाने के लिए, ड्रॉप डाउन है नया डाला गया खाली विकल्प चुना गया। जब मैं इसे IE8 में चलाता हूं, तब भी वोल्वो का चयन होता है। कोई विचार?

http://jsfiddle.net/YFu2h/

उत्तर

34

बदलें यह यह करने के लिए, और यह काम करेंगे:

$("#theSelectId").prepend("<option value=''></option>").val(''); 

http://jsfiddle.net/YFu2h/1/

ऐसा लगता है कि केवल आईई selected विशेषता का मूल्यांकन करता है जब वह पहली बार सामना करना पड़ता है select

+0

धन्यवाद, यह काम किया। – wkm

+0

यह वैल को खाली करने के लिए सेट करेगा। शुरुआती रूप से आपके द्वारा चुने गए किसी भी चयनित आइटम को –

+0

@ हैरीबॉश - ... जो ठीक है ओपी ने पूछा है। –

3

प्रयास करें:

$("#dropdown").prepend(new Option('', '', true, true)); 
$("#dropdown option:first").attr("selected", "selected"); 

या, यदि आप पसंद करते हैं:

$("#dropdown").prepend("<option value=''></option>"); 
$("#dropdown option:first").attr("selected", "selected"); 

का उपयोग करते हुए पहला विकल्प मामूली तेज है। रिक्त उद्धरणों का मतलब खाली मूल्य और खाली टेक्स्ट है, इसलिए आपको जितनी जरूरत हो उतनी भरें। आपको प्रीपेन्ड में चयनित विशेषता की आवश्यकता नहीं है, अब हम उन्हें बाद में जोड़ रहे हैं। यह इंटरनेट एक्सप्लोरर के साथ कुछ करने के लिए कुछ नहीं है जिसे इसे चयनित के रूप में चिह्नित किया जा रहा है क्योंकि यह केवल अभी बनाया गया है।

+0

धन्यवाद, यह काम किया। – wkm

9

मुझे यकीन है कि क्यों अपने कोड काम नहीं कर रहा नहीं कर रहा हूँ (शायद यह तथ्य यह है कि IE में, selectedIndex केवल पढ़ने के लिए है के साथ क्या करने के लिए कुछ नहीं है), लेकिन, इस IE में काम करता है कर:

$("#dropdown").prepend("<option value='' selected='selected'></option>"); 
$("#dropdown")[0].options[0].selected = true; 
+0

धन्यवाद, यह काम किया। – wkm

संबंधित मुद्दे