2010-10-29 31 views
10

Tôi có một ListBox Html:Làm thế nào để thiết lập chiều cao của ListBox để auto

<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> 

tôi cần phải thiết lập chiều cao của việc này để tự động tức là tôi không muốn thanh cuộn xuất hiện.

Tôi đã thử Height:auto; Nhưng nó không hoạt động trong IE.

Tôi nên làm như thế nào?

Trả lời

15

Đặt size property đến số lượng mặt hàng, như thế này:

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

Nếu bạn cần phải làm điều đó theo chương trình, bạn có thể đặt tất cả <select> yếu tố theo chiều dài tùy chọn của họ, như thế này:

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

You can test it out here.

0

thử với height:100%. Nó đang làm việc tại ie6

+0

nope.Không hoạt động trong ví dụ 8. –

1

Bạn có thể sửa đổi nó bằng cách sử dụng máy bay trực thăng 'line-height' và đặt giá trị cho '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> 

Hy vọng điều này sẽ hữu ích.

1

Đặt thuộc tính kích thước bằng số lượng mục (tùy chọn).

var select = $('#targetField'); 
select.attr('size', select[0].options.length); 
Các vấn đề liên quan