2011-07-26 94 views
0

我無法找到任何解決方案中選擇簡單的值更改後正確顯示,代碼工作corretly在Chrome和IE中但不工作在FF選擇不改變

<select id='testsel' name='test'> 
     <option value="">-- select something --</option> 
     <option value="1">selected</option> 
    </select> 

如果我嘗試

$('#testsel').val("1"); 

值被選中但未顯示(您可以查看是否展開選擇)。令人感到奇怪的

$('#testsel').val(); 

返回 「」(第一個值)

同樣的問題,如果我嘗試

$('#testsel > option[value="1"]').attr("selected", "selected"); 

但這次的結果是有點不同

$('#testsel > option[value="1"]').attr("selected"); 

我看「選擇「作爲結果,但在屏幕上什麼也沒有。

有什麼想法?

+2

嗯......它在jsFiddle上效果很好:http://jsfiddle.net/r4WWe/ – Karolis

+1

+1是的,對我來說也很好。 Firefox 5.0 –

回答

0

您是否在使用某些樣式插件進行選擇?

通常這些插件會替換元素,通過代碼更改值不會反映在替換的元素上。 (雖然我覺得奇怪的是它在其他瀏覽器工作)

對於示例代碼應工作正常因素(如在評論驗證)。

+0

我發現問題的原因,但我仍然不明白爲什麼它不起作用在FF $('select',form).not(exclude).children('option')。removeAttr '選擇'); 評論完所有工作後。 –

+0

@pma_,如果你可以提供一個鏈接或一個jsfiddle.net來顯示問題的實際效果,那麼我們需要查看'exclude'中的內容'form'等等,以便正確調試。 。 –