选择具有给定值的选项

时间:2013-10-20 21:35:20

标签: javascript jquery html dom

我正在尝试从选择列表中选择一个特定选项,具体取决于值,我有以下标记:

<select name="class" id="class">
    <option value="1">679460ED-0B15-4ED9-B3C8-A8C276DF1C82</option>
    <option value="2">B99BF873-7DF0-4E7F-95FF-3F1FD1A26139</option>
    <option value="3">1DCD5AD7-F57C-414</option>
    <option value="4">6B0170AA-F044-4F9C-8BB8-31A51E452CE4</option>
    <option value="5">C6A8B</option>
    <option value="6">1BBD6FA4-335A-4D8F-8681-DFED317B8052</option>
    <option value="7">727D71AB-F7D1-4B83-9D6D-6BEEAAB</option>
    <option value="8">BC4DE8A2-C864-4C7C-B83C-EE2450AF11B1</option>
    <option value="9">AIR CONDITIONING  SYSTEM</option>
    <option value="10">POWER GENERATION SYSTEM</option>
</select>

<script>
    selectThisValue('#class',3);
</script>
.js

中的

function selectThisValue(element,value) {
    console.log(value); 
    var elem = $(element + ' option[value=' + value + ']');
    console.log(elem);
    elem.attr("selected", "selected");
}

console.log的结果如下:

3

[prevObject: i.fn.i.init[1], context: document, selector: "#class option[value=3]", jquery: "1.10.2", constructor: function…]

但这不起作用,没有给出任何错误,但也没有发生任何事情。请帮助确定我错在哪里。

3 个答案:

答案 0 :(得分:1)

简单:

$('#class').val('3');

或者使用选项的索引(如果你知道的话):

$('#class').prop('selectedIndex', 2);

答案 1 :(得分:1)

您只需拨打$.val()即可设置所选选项。

$("#class").val(3);

工作示例:http://jsfiddle.net/QphFX/

答案 2 :(得分:-1)

这对您的问题来说是一个更好的解决方案,因为您已经在使用jQuery:

$("#class")[0].selectedIndex = 0 //or whichever index you want selected