【问题标题】:How to get the text of the selected option of a select using jquery?如何使用jquery获取选择的选定选项的文本?
【发布时间】:2010-11-26 08:03:25
【问题描述】:

如果我有这个选择:

     <select id="days">
        <option value="0">Today</option>
        <option value="1">Yesterday</option>
        <option value="7">Last week</option>
     </select>

并且有人选择了第三个选项“上周”,我可以使用$("#days").val() 获得上周的值(即 7),但我如何才能获得文本的值,即“上周”?

【问题讨论】:

  • 我知道以前有人问过这个问题,但我找不到...

标签: javascript jquery


【解决方案1】:
$("#days option:selected").text()

【讨论】:

    【解决方案2】:

    .text() 不会给你想要的结果吗?

    http://marcgrabanski.com/article/jquery-select-list-values - 也发现了这个

    【讨论】:

    • 我也试过.text(),但它给了我一个包含所有选项的字符串,而不仅仅是选定的选项
    • 啊,是的,您确实需要像 najmeddine 建议的那样使用并确保您只获得选定的项目
    【解决方案3】:

    在选项中添加一个类“myOption”,以及一个带有您想要的文本的属性值。那么:

    $(".myOption").each( function( i ) { if( $(this).attr('selected') ) { $(this).attr('value') } );

    【讨论】:

      【解决方案4】:

      可能有点冗长(我确定我能记住一个更简单的方法......)

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

      【讨论】:

        【解决方案5】:

        我更喜欢使用:

        var s = $("#days");
        var i = s.prop("selectedIndex"); //get selected indexs
        s.children().eq(i).text(); 
        

        【讨论】:

          猜你喜欢
          • 2015-06-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-10
          • 2011-01-11
          • 2012-02-25
          • 2017-02-05
          相关资源
          最近更新 更多