【问题标题】:How to get the text of an option by passing value of option with JQuery? [duplicate]如何通过使用 JQuery 传递选项值来获取选项的文本? [复制]
【发布时间】:2011-08-06 09:01:20
【问题描述】:

可能重复:
jQuery get select option text

我有一个下拉列表,如下所示:

<select id="systemMessageList" name="systemMessageList">
    <option value="-1">--- Choose One ---</option>  
    <option value="120">niempo</option>  
    <option value="119">quartero</option>  
    <option value="118">mileno</option>  
</select>

我想要那个:我将传递值,例如 119,它会在 JQuery 中返回文本 quartero

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    对于所选选项的文本,您需要:

    $('#systemMessageList option:selected').text();
    

    对于你可以使用的值

    $('#systemMessageList').val();
    

    编辑:其他答案可能是您想要的。我只是向您展示如何获取所选选项的文本和值。

    【讨论】:

    • 我同意你的观点,但从性能角度来看 $('#systemMessageList').find(':selected').text();会更好
    【解决方案2】:

    试试这个:

    $('option[value="'+$('#systemMessageList').val()+'"]').text();
    

    所以如果选择了119,它将返回:quartero

    或者您可以创建某种函数来获取任何选项值的文本:

    function getOptionText(option){
        return $('option[value="'+option+'"]').text();
    }
    
    getOptionText(119); // yields quartero
    

    【讨论】:

    • 或将 $('#systemMessageList').val() 更改为您想要获取文本的任何值
    • 那也是@codethis,我会把它添加到答案中
    【解决方案3】:
    var text = $('#systemMessageList option[value="119"]').text();
    

    【讨论】:

    • 这里只是少了一个引号!完美的答案!
    【解决方案4】:

    试试这个:

    function getOptionText(value){
        return $('#systemMessageList option[value="' + value + '"]').text(); 
    }
    
    alert(getOptionText(119));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-20
      • 2011-09-21
      • 2011-07-28
      • 2015-03-04
      • 2010-11-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多