【问题标题】:How to get label of select option with jQuery?如何使用 jQuery 获取选择选项的标签?
【发布时间】:2011-01-11 15:44:27
【问题描述】:
<select>
<option value="test">label </option>
</select>

值可以通过$select.val()检索。

label 呢?

是否有适用于 IE6 的解决方案?

【问题讨论】:

  • 你的意思是如何获取选中的值,选中的值?您的案例标签是哪个?
  • 这个问题应该改写成“How to get text of select option with jQuery?”并且所有对标签的引用都应替换为文本以避免与标签属性混淆。

标签: jquery select


【解决方案1】:

试试这个:

$('select option:selected').text();

【讨论】:

  • 这并不总是正确的。选项的显示描述也可以由“标签”属性指定(w3schools.com/tags/att_option_label.asp#gsc.tab=0 和w3.org/TR/html401/interact/forms.html#h-17.6
  • 要获取 label 属性,可以使用:jQuery('#theid option:selected').attr('label')
【解决方案2】:

你好,先给选择一个id作为

<select id=theid>
<option value="test">label </option>
</select>

然后你可以这样调用选中的标签:

jQuery('#theid option:selected').text()

【讨论】:

    【解决方案3】:

    作为参考,选项标签上还有一个辅助label 属性:

    //returns "GET THIS" when option is selected
    $('#selecter :selected').attr('label'); 
    

    HTML

    <select id="selecter">
    <option value="test" label="GET THIS">
    Option (also called label)</option>
    </select>
    

    【讨论】:

      【解决方案4】:

      要在下拉列表中获取特定选项的标签,您可以使用这个 --

      $('.class_of_dropdown > option[value='value_to_be_searched']').html();
      

      $('#id_of_dropdown > option[value='value_to_be_Searched']').html();
      

      【讨论】:

        【解决方案5】:

        我觉得这很有帮助

        $('select[name=users] option:selected').text()
        

        使用this 关键字访问选择器时。

        $(this).find('option:selected').text()
        

        【讨论】:

          【解决方案6】:

          试试这个:

          $('select option:selected').prop('label');
          

          这将为&lt;option&gt; 元素的两种样式提取显示的文本:

          • &lt;option label="foo"&gt;&lt;option&gt; -> "foo"
          • &lt;option&gt;bar&lt;option&gt; -> "bar"

          如果它同时具有label 属性和元素内的文本,它将使用label 属性,这与浏览器的行为相同。

          为了后代,这是在 jQuery 3.1.1 下测试的

          【讨论】:

            【解决方案7】:
            $("select#selectbox option:eq(0)").text()
            

            “option:eq(0)”中的 0 索引可以交换为您想要检索的任何索引选项。

            【讨论】:

              【解决方案8】:
              <SELECT id="sel" onmouseover="alert(this.options[1].text);"
              <option value=1>my love</option>
              <option value=2>for u</option>
              </SELECT>
              

              【讨论】:

                【解决方案9】:

                为此创建了工作 Plunker。 https://plnkr.co/edit/vR9aGoCwoOUL9tevIEen $('#console').append("&lt;br/&gt;"+$('#test_s :selected').text())

                【讨论】:

                  【解决方案10】:

                  在现代浏览器中,您不需要 JQuery。而是使用

                  document.querySelectorAll('option:checked')
                  

                  或者指定任何 DOM 元素而不是 document

                  【讨论】:

                    【解决方案11】:

                    您正在寻找$select.html()

                    http://api.jquery.com/html/

                    【讨论】:

                    • 这只是返回所有选项元素的 html。标签文本在 /in/ 某处,但这不是获取它的最有效方式。
                    猜你喜欢
                    • 1970-01-01
                    • 2012-01-28
                    • 2020-04-22
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2016-07-28
                    • 2010-10-10
                    相关资源
                    最近更新 更多