一、選取Radio按鈕並添加點擊事件
在HTML中,我們可以使用input標籤來創建Radio按鈕,為了能夠選擇多個選項的組合,每個Radio按鈕必須具有相同的name屬性。下面的代碼中創建了兩個Radio按鈕,分別用於選擇男性和女性:
<input type="radio" name="gender" value="male" id="male"> <label for="male">男性</label> <input type="radio" name="gender" value="female" id="female"> <label for="female">女性</label>
其中的for屬性和label標籤是為了能夠在點擊文本時也能選中相應的Radio按鈕。現在,我們需要為這兩個Radio按鈕添加點擊事件。
const male = document.getElementById("male"); const female = document.getElementById("female"); male.addEventListener("click", function(){ console.log("男性被選中了"); }); female.addEventListener("click", function(){ console.log("女性被選中了"); });
上面的代碼使用了addEventListener方法為每個Radio按鈕添加了一個click事件,當點擊任何一個Radio按鈕時,相應的回調函數會被執行。
二、防止Radios被禁用
有時候,我們可能會需要禁用Radio按鈕,但是如果在被禁用時仍然可以觸發click事件,這可能會導致一些奇怪的行為。為了避免這種情況的發生,我們需要添加一個檢查項來確保按鈕未被禁用:
male.addEventListener("click", function(){ if (!male.disabled) { console.log("男性被選中了"); } }); female.addEventListener("click", function(){ if (!female.disabled) { console.log("女性被選中了"); } });
上面的代碼中,我們在回調函數中添加了一個檢查,判斷當前按鈕是否被禁用。如果被禁用,就不會執行相應的操作。
三、為組件集添加廣告
在某些情況下,我們可能需要向Radio按鈕組添加廣告或其他類似的文本。為了實現這一點,我們可以創建一個新的label元素,並將其插入到Radio按鈕周圍:
const maleWrapper = document.createElement("div"); maleWrapper.appendChild(male); maleWrapper.innerHTML += "<label>廣告</label>"; const femaleWrapper = document.createElement("div"); femaleWrapper.appendChild(female); femaleWrapper.innerHTML += "<label>廣告</label>";
上面的代碼中,我們創建了兩個包裝器(wrapper),並用appendChild方法將Radio按鈕添加到包裝器中。然後,我們通過DOM操作將一個新的label元素添加到包裝器中。由於我們正在使用innerHTML屬性來添加文本,因此我們必須注意如何轉義特殊字符。
四、利用原生JavaScript函數實現Radio按鈕的選中與取消
在某些情況下,我們需要直接通過JavaScript代碼來處理Radio按鈕的選中狀態,既可以手動選中它,也可以手動取消它:
// 選中男性 male.checked = true; // 取消女性 female.checked = false;
上面的代碼直接使用了input元素的checked屬性,將其值設置為true或false來修改按鈕的選中狀態。
五、結合jQuery實現Radio按鈕的選中與取消
如果你使用jQuery,可以使用.prop方法來選中或取消選中Radio按鈕:
$(":radio[value='male']").prop("checked", true); $(":radio[value='female']").prop("checked", false);
上面的代碼是一個jQuery片段,使用$函數選取所有value屬性為”male”和”female”的Radio按鈕,然後使用.prop方法來修改其選中狀態。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/312807.html