2013-10-20 166 views
0

我想選擇取決於值選擇列表中的特定選項,我有以下的標記:選擇一個選項與給定值

<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…] 

但是,這是行不通的,沒有出現錯誤,但也沒有發生。請幫助確定我錯在哪裏。

+0

如果你已經把函數調用? –

+0

JavaScript函數加載後函數是否運行?在這種情況下,您需要查看$(document).ready();功能。本質上,javascript在select元素存在之前運行。 –

+1

,因爲我真的不知道如何谷歌它:你能告訴我這個'@value [4]'表達式做什麼? – lexith

回答

-1

這將是一個更好的解決您的問題,因爲你已經在使用jQuery:

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

簡單:

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

或者使用該選項的索引(如果你知道的話) :

$('#class').prop('selectedIndex', 2); 
相關問題