2011-11-22 59 views
0

我有點困惑,爲什麼我可以使用.remove()但不是.hide()上的選項。 有人知道爲什麼嗎?jQuery忽略隱藏但接受刪除選擇'選項'

的HTML代碼:

<select> 
    <option value="choose">---</option> 
    <option value="foo">foo</option> 
    <option value="bar">bar</option> 
</select> 

和JavaScript代碼:

$('select').focus(function() { 
    $('option[value="choose"]').hide(); 
    //$('option[value="choose"]').remove(); 
}); 

這裏的的jsfiddle:http://jsfiddle.net/PzaHy/10/

+0

作品對我來說,唯一的問題是,它還是老樣子有選擇的第一個(和你有沒有在你設定的jQuery爲骨架的jsfiddle) –

+0

在Chrome 17對我來說這兩個工作是什麼瀏覽器,你使用?另外,您將jsfiddle保存爲mootools而不是jQuery。你是在一個應用程序中嘗試這個,還是隻是jsfiddle? –

+0

是的,我做了一個新的,只是忘了它選擇它我更新它。 – ggzone

回答

3

選擇框操作系統控制不正確的HTML渲染的元素,所以他們通常不會像普通的HTML元素那樣行事。

+0

似乎不可能隱藏它/我刪除它 – ggzone

1

這不起作用。如果你不想刪除,你可以禁用它們。試試這個

$('select').focus(function() { 
    $('option[value="choose"]').attr('disabled', true); 
}); 
+0

多數民衆贊成在良好的,但它仍然可見 – ggzone