按文字获取下拉元素值

时间:2018-06-01 18:10:02

标签: jquery

我在遗留应用程序中工作,我有义务通过选项文本获取选项的值,而不是像往常一样获取其他方式。

这是一个我需要帮助的非工作示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
</head>
<body>
<select id="myselect" name="myselect">
    <option value="0">Zero</option>
    <option value="1">One</option>
    <option value="2">Two</option>
    <option value="3">Three</option>
</select>
<script>
$(document).ready(function(){
    var optionText = 'Two';
    console.log($('#myselect option[option="' + optionText + '"]').attr("value"));
});
</script>
</body>
</html>

由于

2 个答案:

答案 0 :(得分:0)

试一试

$('#myselect').find('option[text="' + optionText + '"]').val();

答案 1 :(得分:0)

这似乎取决于版本。 这对我有用:

$('#myselect option').filter(function () { return $(this).html() == "Two"; }).val()

由于