js控制radio選中

常常會遇到js控制radio選中和切換的問題javascript

以前一直使用的是checked屬性來完成的java

可是如今發現這個屬性有個大問題.net

今天就是用js給選中radio的賦值,使用的$().attr("checked",true);blog

當切換的時候,把name相同的radio的attr("checked",false),再把要選中的radio.attr("checked",true);事件

可是問題來了,每一個radio只能被賦值一次,當第二次給他賦值的時候,賦不上值ip

後來發現,checkbox在這種狀況下會出現同樣的問題get

因而仔細查了一下這個屬性發現了問題input

w3cshool上關於這個屬性的介紹it

能夠看到,關鍵點在於被預先選定的input元素io

也就是說這個屬性原來就是打算頁面加載的時候爲了讓radio有一個默認的值而增長的一個屬性,這樣有了這個屬性的input在頁面加載的時候就是選定的

因此當要切換input的時候,這個屬性顯然就不太合適了

 

因此在使用js對radio進行賦值切換的時候,推薦你們使用

1.$().prop("checked",true)

使用prop方法並搭配checked屬性實現js點擊radio

prop方法適用於set和get值爲true/false的屬性的方法如checked selected readyonly

並且不須要對未點擊的radio作處理 很方便

2.$().click()

這個方法就比較乾脆,直接出發點擊事件,不會出現問題

這兩個方法效果上同樣

 

from:http://blog.csdn.net/u014267351/article/details/50333425

相關文章
相關標籤/搜索