当前位置:  开发笔记 > 编程语言 > 正文

jQuery获取特定的选项标签文本

如何解决《jQuery获取特定的选项标签文本》经验,为你挑选了15个好方法。

好吧,说我有这个:


如果我想在值为'2'时获得"选项B",选择器会是什么样子?

请注意,这不是询问如何获取所选文本值,而是询问它们中的任何一个,无论是否选中,具体取决于value属性.我试过了:

$("#list[value='2']").text();

但它没有用.



1> 小智..:

如果您想获得值为2的选项,请使用

$("#list option[value='2']").text();

如果您想获得当前选择的任何选项,请使用

$("#list option:selected").text();


要获取值而不是文本,您需要编写: - $("select#list").val(); 我知道这不是问题的实际答案,但仍然想到通过谷歌提出新手的这一点.

2> nickf..:

它正在寻找一个id为2的元素,list其属性value等于2.你想要的是它的option孩子list.

$("#list option[value='2']").text()


@Kevin,在这种情况下,你可能想要使用下面这个答案.`$('#list option:selected').text()`
@Derek,val()不会给出选项的文本,它会给出它的值,这在某些情况下(很多我敢说)是不一样的.
@nickf,更简单,`$('#list').val()`
谢谢你的昵称.如果要动态获取值,可以扩展此答案:var selectValue = document.getElementById('list').value; var selectOption = $("#list option [value ="+ selectValue +"]").text(); ///好示例nickf.

3> raphie..:

这对我来说非常合适,我正在寻找一种方法来发送两个不同的值与MySQL生成的选项,以下是通用和动态的:

$(this).find("option:selected").text();

正如其中一条评论所述.有了这个,我就能够创建一个动态函数,它可以处理我想要获取值,选项值和文本的所有选择框.

几天前我注意到,当我使用这段代码从站点的1.6到1.9更新jQuery时,这个停止工作...可能与另一段代码发生冲突...无论如何,解决方案是从中删除选项find()调用:

$(this).find(":selected").text();

这是我的解决方案......只有在更新jQuery后遇到任何问题时才使用它.


根据WebStorm 8,据说这是更有效的方法.
虽然这个答案是有洞察力的并且帮助我解决了我遇到的问题,但是它并没有正确地回答这个问题:_请注意,这不是询问如何获取所选的文本值,而是选择其中任何一个,无论选择或不,取决于值属性._

4> asyadiqin..:

根据Paolo发布的原始HTML,我想出了以下内容.

$("#list").change(function() {
    alert($(this).find("option:selected").text()+' clicked!');
});

它已经过测试,适用于Internet Explorer和Firefox.


另一种方法是:$("option:selected",this).text()

5> Beena Shetty..:

    如果页面上只有一个选择标记,那么您可以在id'list'中指定select

    jQuery("select option[value=2]").text();
    

    获取所选文本

    jQuery("select option:selected").text();
    



6> 小智..:
$("#list option:selected").each(function() {
   alert($(this).text());
});  

对于#list元素中的多个选定值.



7> Andrew Moore..:

请尝试以下方法:

$("#list option[value=2]").text();

您的原始代码段不起作用的原因是因为您的OPTION代码是您的代码的子代SELECT,其中包含id list.



8> 小智..:

这是一个旧的问题,在一段时间内没有更新,现在正确的方法是使用

$("#action").on('change',function() {
    alert($(this).find("option:selected").text()+' clicked!');
});

我希望这有帮助 :-)



9> 小智..:
$(this).children(":selected").text()



10> 小智..:

我想获得所选标签.这在jQuery 1.5.1中对我有用.

$("#list :selected").text();



11> 小智..:
$("#list [value='2']").text();

在id选择器后面留一个空格.



12> 小智..:

您可以使用函数获取选定的选项文本 .text();

你可以像这样调用这个函数:

jQuery("select option:selected").text();



13> eon..:

通过动态创建的选择元素"循环"使用.each(function()...):$("option:selected").text();并且$(this + " option:selected").text()没有返回所选的选项文本 - 而是返回null.

但Peter Mortensen的解决方案有效:

$(this).find("option:selected").text();

我不知道为什么通常的方式不会成功.each()(可能是我自己的错误),但谢谢你,彼得.我知道这不是原来的问题,但我提到它"是为了通过谷歌来做新手".

我会开始,$('#list option:selected").each()除了我需要从select元素中获取东西.



14> Mary Daisy S..:

使用:

function selected_state(){
    jQuery("#list option").each(function(){
        if(jQuery(this).val() == "2"){
            jQuery(this).attr("selected","selected");
            return false;
        }
    });
}

jQuery(document).ready(function(){
    selected_state();
});



15> FAA..:

我正在寻找通过内部字段名称而不是ID来获取val,并且从谷歌来到这篇帖子有帮助但没有找到我需要的解决方案,但我得到了解决方案,这里是:

因此,这可能有助于某人使用字段内部名称查找所选值,而不是使用SharePoint列表的长ID:

var e = $('select[title="IntenalFieldName"] option:selected').text(); 

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有