2012-03-13 63 views
1

documentation jQuery的:selected選擇器說,使用它的正確方法是使用,例如,$('select').filter(':selected')。但是,我無法讓它工作!它只適用於我使用類似$('select :selected')的東西。jquery:選擇不工作的權利?

這裏有一個小例子,有my jsFiddle implementation of it一起:

的JavaScript:

function getLengths() { 
    $("#dothis").text($("select").filter(":selected").length); 
    $("#dothat").text($("select :selected").length); 
} 

$(function() { 
    getLengths(); 
    $("select").change(getLengths); 
}); 

相關的HTML:

<select multiple="multiple"> 
    <option selected="true">one</option> 
    <option>two</option> 
</select> 
<div> 
    <pre>$("select").filter(":selected").length = <span id="dothis"></span></pre> 
    <pre>$("select :selected").length = <span id="dothat"></span></pre> 
</div> 

回答

3

過濾選項元素,不要選擇:

function getLengths() { 
    $("#dothis").text($("option").filter(":selected").length); 
    $("#dothat").text($("select :selected").length); 
} 

$(function() { 
    getLengths(); 
    $("select").change(getLengths); 
}); 

http://jsfiddle.net/fdU83/6/

+0

啊哈!這就說得通了! – 2012-03-13 03:20:20

0

updated fiddle

:selected是一個過濾器10

你想這樣做:

$("select option").filter(":selected") 

甚至更​​好...

$("select option:selected")