2010-04-28 14 views
29

option या optgroup HTML तत्वों को छिपाने का कोई तरीका है? मैंने jQuery में hide() को कॉल करने का प्रयास किया है, और style.display='none' सेट करने के लिए नियमित जावास्क्रिप्ट का भी उपयोग किया है।ऑप्टग्रुप/विकल्प तत्वों को कैसे छिपाना है?

यह फ़ायरफ़ॉक्स में काम करता है लेकिन किसी अन्य ब्राउज़र में नहीं। वास्तव में उन्हें DOM से हटाकर कार्य करता है, तो शायद हटाए जाने पर प्रत्येक DOM तत्व को सहेजने का एक तरीका है, और उन्हें उसी स्थान पर फिर से डालें?

मेरे एचटीएमएल इस तरह है:

<select name="propsearch[area]" id="propsearch_area"> 
    <option value="0">- Any -</option> 
    <optgroup label="Bristol"> 
     <option value="Hotwells">Hotwells</option> 
     <option value="Montpelier">Montpelier</option> 
    </optgroup> 
    <optgroup label="Cardiff"> 
     <option value="Heath">Heath</option> 
     <option value="Roath">Roath</option> 
    </optgroup> 
    <optgroup label="Exeter"> 
     <option value="Pennsylvania Road">Pennsylvania Road</option> 
     <option value="Lower North Street">Lower North Street</option> 
    </optgroup> 
    <optgroup label="Swansea"> 
     <option value="Brynmill">Brynmill</option> 
     <option value="Uplands">Uplands</option> 
    </optgroup> 
</select> 
+0

यदि R0MANARMY सही है और आप उन्हें अक्षम करने के साथ ठीक हैं, '$ (' optgroup [label = स्वानसी] ')। Attr (' अक्षम ', सत्य)' ठीक काम करता प्रतीत होता है। –

+0

@MaxShawabkeh '

उत्तर

11

मैं लगा कि इस समाधान मेरे लिए ठीक काम करता है:

एक और उदाहरण के लिए चयन बनाओ

$("#footer_canvas").after('<select id="parkingLot"></select>'); 

तो यह

$("#parkingLot").hide(); 

छिपाने जब आप यह छिपा हुआ चयन में 'छिपाएं' कुछ optgroup, बस 'पार्क' यह करना चाहते हैं।

$('#VehicleVehicleCategoryId optgroup[label="kategorie L"]').appendTo("#parkingLot"); 

वैसे ही आप इसे दृश्यमान बना सकते हैं। यह सिर्फ मेरे समाधान के स्निपेट है, जो मेरे लिए ठीक काम करता है।

+1

एक और तरीका डेटा को केवल JSON ऑब्जेक्ट में संग्रहीत करना होगा जिसे आप छिपे हुए चयन के बजाय हेरफेर कर सकते हैं। – radtek

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