getAttribute
,所有内容,但没有沿着属性组合框获取文本。
我想把文本和每个组合框放在一起。
<small>
<input type="checkbox" checked="checked" value="on" name="irOperations[0]"/>
Account Activity
<br/>
<input type="checkbox" checked="checked" value="on" name="irOperations[1]"/>
Current Day Balances
<br/>
<input type="checkbox" checked="checked" value="on" name="irOperations[2]"/>
Current Day Transactions
<br/>
<input type="checkbox" checked="checked" value="on" name="irOperations[3]"/>
Prior Day Balances
<br/>
<input type="checkbox" checked="checked" value="on" name="irOperations[4]"/>
Prior Day Transactions
<br/>
<li class="xc">
</small>
您可以做什么:
- 用
<label></label>
换行 - 使用
ID
将文本与复选框连接 - 然后你可以从那个标签上得到
innerHTML
示例:
HTML
<input id="account-activity" type="checkbox" checked="checked" value="on" name="irOperations[0]">
<label for="account-activity">Account Activity</label>
JavaScript
document.querySelector('[for="account-activity"]').innerHTML
这将返回一个数组,其中"name"作为索引,下一个内容作为值
var comboboxes = document.getElements('input[type="checkbox"][name]');
var output = [];
comboboxes.forEach(function(combobox) {
output[combobox.getAttribute('name')] = combobox.nextSibling.textContent.trim();
});
console.log(output);
或
document.getElement('input[type="checkbox"][name="irOperations[1]"]').nextSibling.textContent
好吧,你无法获得"自包含"元素的innerHTML或getText,例如<input />
一种方法是使用HTML5数据属性并给每个元素一个ID:
<input type="checkbox" id="account_activity" data-detail="Account Activity" checked="checked" value="on" name="irOperations[0]"/>
Account Activity
<br/>
通过这种方式,您可以使用以下JS来获得值:
var combo_element = document.getElementById("account_activity");
alert(combo_element.getAttribute("data-detail"));