首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Javascript根据标签从select选项获取值

Javascript根据标签从select选项获取值
EN

Stack Overflow用户
提问于 2018-09-21 04:21:15
回答 3查看 237关注 0票数 -1

使用jQuery或纯JavaScript,如何根据标签获取select选项的ID?因此,例如,给定以下内容:

代码语言:javascript
复制
<select id="blah">
  <option value="1">One</option>
  <option value="2">Two</option>
  <option value="3">Three</option>
</select>

如果我有标签"Two“,但我需要知道与它相关的值,我如何从这个select中获得该值?我不想简单地选择它,我需要知道它的值是什么。

EN

回答 3

Stack Overflow用户

发布于 2018-09-21 04:30:17

如果您拥有的唯一引用实际上是实际的文本内容,那么您将不得不遍历元素并检查每个元素的内容。这里显示了jQuery,只是因为它的类型更少:

代码语言:javascript
复制
var result;
$("option").each(function() {
    if ($(this).text() == "Two") {
        result = $(this).attr("value");
        return false;
    });
});
票数 3
EN

Stack Overflow用户

发布于 2018-09-21 04:39:47

另一种选择:

代码语言:javascript
复制
$('#blah').find('option:contains("Two")').val();

(双关语?)

票数 1
EN

Stack Overflow用户

发布于 2018-09-21 04:30:20

获取所有选项,然后使用find获取包含特定文本的选项。

代码语言:javascript
复制
const optionEls = Array.from(document.querySelectorAll("#blah option"));
const hasText = text => el => el.textContent === text;
const optionWithTwo = optionEls.find(hasText("Two"));
console.log(optionWithTwo.value);
代码语言:javascript
复制
<select id=blah>
  <option value=1>One</option>
  <option value=2>Two</option>
  <option value=3>Three</option>
</select>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52432725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档