2010-10-29 12 views
10

को ListBox की ऊंचाई निर्धारित करने के लिए मैं एक एचटीएमएल ListBox है:कैसे ऑटो

<select id="targetField" multiple="multiple" name="D1" style="width:200px;"> 
       <option>INDIA</option> 
       <option>USA</option> 
       <option>UK</option> 
       <option>AUSTRALIA</option> 
       <option>RUSSIA</option> 
       <option>FRANCE</option> 
       <option>HOLLAND</option> 
</select> 

मैं ऑटो यानी करने के लिए इस की ऊंचाई मैं स्क्रॉलबार प्रकट करने के लिए नहीं करना चाहती सेट करना होगा।

मैं Height:auto; की कोशिश की लेकिन यह IE में काम नहीं कर रहा।

मुझे यह कैसे करना चाहिए?

उत्तर

15

आइटम्स की संख्या को size property सेट, इस तरह:

<select id="targetField" multiple name="D1" style="width:200px;" size="7"> 

आप इसे प्रोग्राम के रूप में करने की जरूरत है, तो आप सभी <select> तत्वों को उनके विकल्प लंबाई करने के लिए, इस तरह सेट कर सकते हैं:

$("select").attr("size", function() { return this.options.length; }); 

You can test it out here

0

height:100% साथ प्रयास करें। यह IE6

+0

नहीं। यह 8 यानी काम नहीं कर रहा है। –

1

में काम कर रहा है आप 'ऊंचाई' के लिए eighter का उपयोग कर 'line-height' और डाल मूल्यों इसे संशोधित कर सकते हैं।

<select id="targetField" multiple="multiple" name="D1" style="width:200px; line-height:27px; float:left; height:130px;"> 
       <option>INDIA</option> 
       <option>USA</option> 
       <option>UK</option> 
       <option>AUSTRALIA</option> 
       <option>RUSSIA</option> 
       <option>FRANCE</option> 
       <option>HOLLAND</option> 
</select> 

उम्मीद है कि इससे मदद मिलती है।

1

सेट आकार आइटम (विकल्प) की संख्या के बराबर जोड़कर देखते हैं।

var select = $('#targetField'); 
select.attr('size', select[0].options.length); 
संबंधित मुद्दे