使用 innerHTML 根据复选框更改 div 值
Using innerHTML to change div value based on checkbox
我正在尝试根据复选框是否被选中来更改 div 中的文本。我是 Javascript 的新手,所以这就是我尝试过的...如果有人能指出我离开 rails 的地方,我将不胜感激。
function SetContent() {
if (document.complianceformAA.compliance_AA.checked == true) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="SetContent ();">Generate Summary</button>
<div id="ComplianceSummary"></div>
你不应该使用 named elements, instead select by the id
using Document.getElementById()
function SetContent() {
if (document.getElementById('compliance_AA').checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="SetContent ();">Generate Summary</button>
<div id="ComplianceSummary"></div>
首先,缩进您的代码:
function setContent() {
if (document.complianceformAA.compliance_AA.checked == true) {
document.getElementById('ComplianceSummary').innerHTML="A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML="Key Element I-A is met.";
}
}
其次,你不会得到这样的元素。
您可以通过以下方法之一获得它:
这是根据ID获取元素。例如,这个:
document.getElementById('checkbox');
会得到这个:
<input type="checkbox" id="checkbox"></input>
这会获取所有具有相同标签的元素。
document.getElementsByTagName('button');
可以return
HTMLCollection [ <button>, <button>, <button>, <button> ]
使用此 HTML 代码:
<div id="buttons">
<button>
<button>
<button>
<button>
</div>
此 return 具有特定 class 名称的所有元素。例如:
document.getElementsByClassName('a')
可以return
HTMLCollection [ <button.a>, <button.a>, <button.a>, <button.a> ]
使用此代码
<div id="buttons">
<button class="a">
<button class="a">
<button class="a">
<button class="a">
</div>
这将获取具有指定名称的所有元素。例如:
document.getElementsByName('hi');
可以return
NodeList [ <button.className> <button.className> ]
使用此 HTML 代码:
<div id="buttons">
<button name="hi" class="className">
<button name="hi" class="className">
</div>
所以你想要的 javascript 是这样的:
function setContent() {
checkBox = document.getElementById('compliance_AA');
if (checkBox.checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
这是一个例子:
function setContent() {
checkBox = document.getElementById('compliance_AA');
if (checkBox.checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="setContent();">Generate Summary</button>
<div id="ComplianceSummary"></div>
function SetContent(){
var chk = document.getElementById("compliance_AA");
var summary = document.getElementById("ComplianceSummary");
if(chk.checked){
summary.innerHTML="A compliance concern is found for Key Element I-A."
}else{
summary.innerHTML="Key Element I-A is met."
}
}
我正在尝试根据复选框是否被选中来更改 div 中的文本。我是 Javascript 的新手,所以这就是我尝试过的...如果有人能指出我离开 rails 的地方,我将不胜感激。
function SetContent() {
if (document.complianceformAA.compliance_AA.checked == true) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="SetContent ();">Generate Summary</button>
<div id="ComplianceSummary"></div>
你不应该使用 named elements, instead select by the id
using Document.getElementById()
function SetContent() {
if (document.getElementById('compliance_AA').checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="SetContent ();">Generate Summary</button>
<div id="ComplianceSummary"></div>
首先,缩进您的代码:
function setContent() {
if (document.complianceformAA.compliance_AA.checked == true) {
document.getElementById('ComplianceSummary').innerHTML="A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML="Key Element I-A is met.";
}
}
其次,你不会得到这样的元素。 您可以通过以下方法之一获得它:
这是根据ID获取元素。例如,这个:
document.getElementById('checkbox');
会得到这个:
<input type="checkbox" id="checkbox"></input>
这会获取所有具有相同标签的元素。
document.getElementsByTagName('button');
可以return
HTMLCollection [ <button>, <button>, <button>, <button> ]
使用此 HTML 代码:
<div id="buttons">
<button>
<button>
<button>
<button>
</div>
此 return 具有特定 class 名称的所有元素。例如:
document.getElementsByClassName('a')
可以return
HTMLCollection [ <button.a>, <button.a>, <button.a>, <button.a> ]
使用此代码
<div id="buttons">
<button class="a">
<button class="a">
<button class="a">
<button class="a">
</div>
这将获取具有指定名称的所有元素。例如:
document.getElementsByName('hi');
可以return
NodeList [ <button.className> <button.className> ]
使用此 HTML 代码:
<div id="buttons">
<button name="hi" class="className">
<button name="hi" class="className">
</div>
所以你想要的 javascript 是这样的:
function setContent() {
checkBox = document.getElementById('compliance_AA');
if (checkBox.checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
这是一个例子:
function setContent() {
checkBox = document.getElementById('compliance_AA');
if (checkBox.checked) {
document.getElementById('ComplianceSummary').innerHTML = "A compliance concern is found for Key Element I-A.";
} else {
document.getElementById('ComplianceSummary').innerHTML = "Key Element I-A is met.";
}
}
<div id="Concerns">
<form id="complianceformAA">
<input type="checkbox" id="compliance_AA">
<label for="compliance_AA">Compliance Concern?</label>
</form>
</div>
<button onclick="setContent();">Generate Summary</button>
<div id="ComplianceSummary"></div>
function SetContent(){
var chk = document.getElementById("compliance_AA");
var summary = document.getElementById("ComplianceSummary");
if(chk.checked){
summary.innerHTML="A compliance concern is found for Key Element I-A."
}else{
summary.innerHTML="Key Element I-A is met."
}
}