0
大多認爲出現,因爲我寫了這一個就像this(用戶希望切換使用純JS元素的類)或this(用戶希望希望切換使用jQuery等屬性)如何使用純JavaScript切換元素的屬性?
了類似的問題我的問題是兩者的混合。我知道el.classList.toggle()
方法存在切換使用純JS的元素的類,但我希望切換使用純JS的不同屬性,特別是某些單選按鈕的checked
屬性,因爲當選擇不同的選項時,這(令人討厭地)不會改變。
是否可以用純JS切換我的兩個單選按鈕上的checked
屬性(通過切換我的意思是如果它存在,則將它從屬性中完全刪除,如果不存在則添加它)?
radios = document.getElementsByName("Floor");
for (i = 0; i < radios.length; i++) {
radios[i].addEventListener('change', function() {
this.(/*checked attribute*/).toggle()
}, false);
}
<input checked id="Floor" name="Floor" type="radio" value="0">Ground Floor
<input id="Floor" name="Floor" type="radio" value="1">First Floor
編輯:在評論中提到的possible duplicate question並沒有完全解決我的問題。我不需要更改選中哪個單選按鈕,我只想切換checked
屬性,以便我更輕鬆地引用稍後在代碼中檢查的按鈕。當然,如果有另一種更簡單的方法來做到這一點,我就會全神貫注。
[W3Schools的'Element.setAttribute()'](https://www.w3schools.com/jsref/met_element_setattribute.asp)[MDN'Element.setAttribute()'](HTTPS://顯影劑。 mozilla.org/en-US/docs/Web/API/Element/setAttribute) –
另請參閱 - [DOM'.removeAttribute()'](https://developer.mozilla.org/docs/Web/API/Element/的removeAttribute)。由於「切換」不存在,您可以輕鬆創建一個功能來執行此操作。 – evolutionxbox
你給了兩個元素相同的ID。這是無效的。它們可以具有相同的名稱,但ID是唯一的。 – Amy