找到具有最大文本的选项的宽度

时间:2013-12-14 10:36:45

标签: javascript jquery

我在div中有一个选择框

<div>
    <select>
    <option value="0">apple</option>
    <option value="1">orange</option>
    <option value="2">bannan fruit</option>
    </select>
<div>

我想找到option的宽度,该宽度包含最多文字,并希望在div上设置

var max_length = -1;
$('option').each(function(){
  max_length = Math.max(max_length, $(this).text().length);
});
alert(max_length);

我试过这种方式,但它给出了字母数而不是选项宽度

任何帮助都将非常适合

3 个答案:

答案 0 :(得分:0)

var selectWidth = $("select").width()

将为您提供html选择的最大宽度

将宽度指定给div

$(".divClass").width(selectWidth);

答案 1 :(得分:0)

jsfiddle link to prove

 var m = '0';  
var n = '';
$('option').each(
 function(){
     if($(this).html().length > m){
     m = $(this).html().length;
     n = $(this).html();
     }
 });
$('#text').html(n);

答案 2 :(得分:0)

试试这个:

<div>
    <select id="sel">
    <option value="0">apple</option>
    <option value="1">orange</option>
    <option value="2">bannan fruit</option>
    </select>
<div>

$(document).ready(function(){

    alert(($('#sel option:selected').text()).length);
});