1 回答

TA貢獻1804條經驗 獲得超8個贊
您可以將 this 發送到復選框的 onclick 方法中,因此它調用的函數可以跟蹤被單擊的元素并訪問其父元素為了訪問父級的子級 span 元素。
見下文:
function printText(el) {
console.log( el.parentNode.querySelector('span').innerHTML );
}
<p>
<label>
<input name="milk" type="checkbox" onclick="printText(this)">
<span>Milk</span>
</label>
</p>
編輯:OP詢問如果HTML無法更改怎么辦
如果無法更改 HTML,您可以通過 javascript 找到復選框和 span 元素,如下所示:
var chkBox = document.querySelector('input[type="checkbox"][name="milk"]');
chkBox.addEventListener("click", function() {
if(this.checked) { // remove this if statement if you want it to print on every click
console.log( this.parentNode.querySelector('span').innerHTML );
}
});
<p>
<label>
<input name="milk" type="checkbox">
<span>Milk</span>
</label>
</p>
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報