好吧,说我有这个:
如果我想在值为'2'时获得"选项B",选择器会是什么样子?
请注意,这不是询问如何获取所选文本值,而是询问它们中的任何一个,无论是否选中,具体取决于value属性.我试过了:
$("#list[value='2']").text();
但它没有用.
如果您想获得值为2的选项,请使用
$("#list option[value='2']").text();
如果您想获得当前选择的任何选项,请使用
$("#list option:selected").text();
它正在寻找一个id为2的元素,list
其属性value
等于2.你想要的是它的option
孩子list
.
$("#list option[value='2']").text()
这对我来说非常合适,我正在寻找一种方法来发送两个不同的值与MySQL生成的选项,以下是通用和动态的:
$(this).find("option:selected").text();
正如其中一条评论所述.有了这个,我就能够创建一个动态函数,它可以处理我想要获取值,选项值和文本的所有选择框.
几天前我注意到,当我使用这段代码从站点的1.6到1.9更新jQuery时,这个停止工作...可能与另一段代码发生冲突...无论如何,解决方案是从中删除选项find()调用:
$(this).find(":selected").text();
这是我的解决方案......只有在更新jQuery后遇到任何问题时才使用它.
根据Paolo发布的原始HTML,我想出了以下内容.
$("#list").change(function() { alert($(this).find("option:selected").text()+' clicked!'); });
它已经过测试,适用于Internet Explorer和Firefox.
如果页面上只有一个选择标记,那么您可以在id'list'中指定select
jQuery("select option[value=2]").text();
获取所选文本
jQuery("select option:selected").text();
$("#list option:selected").each(function() { alert($(this).text()); });
对于#list
元素中的多个选定值.
请尝试以下方法:
$("#list option[value=2]").text();
您的原始代码段不起作用的原因是因为您的OPTION
代码是您的代码的子代SELECT
,其中包含id
list
.
这是一个旧的问题,在一段时间内没有更新,现在正确的方法是使用
$("#action").on('change',function() { alert($(this).find("option:selected").text()+' clicked!'); });
我希望这有帮助 :-)
$(this).children(":selected").text()
我想获得所选标签.这在jQuery 1.5.1中对我有用.
$("#list :selected").text();
$("#list [value='2']").text();
在id选择器后面留一个空格.
您可以使用函数获取选定的选项文本 .text();
你可以像这样调用这个函数:
jQuery("select option:selected").text();
通过动态创建的选择元素"循环"使用.each(function()...):$("option:selected").text();
并且$(this + " option:selected").text()
没有返回所选的选项文本 - 而是返回null.
但Peter Mortensen的解决方案有效:
$(this).find("option:selected").text();
我不知道为什么通常的方式不会成功.each()
(可能是我自己的错误),但谢谢你,彼得.我知道这不是原来的问题,但我提到它"是为了通过谷歌来做新手".
我会开始,$('#list option:selected").each()
除了我需要从select元素中获取东西.
使用:
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(); });
我正在寻找通过内部字段名称而不是ID来获取val,并且从谷歌来到这篇帖子有帮助但没有找到我需要的解决方案,但我得到了解决方案,这里是:
因此,这可能有助于某人使用字段内部名称查找所选值,而不是使用SharePoint列表的长ID:
var e = $('select[title="IntenalFieldName"] option:selected').text();