根据是否勾选复选框来更改复选框的值?

时间:2014-06-01 10:14:11

标签: javascript jquery code-generation

我正在制作这个文本代码生成器,而且我有点卡住了。在自定义面板中,您有5个复选框。它们是粗体,斜体,下划线,删除线和混淆。它们都具有当前“假”的值。

我想要发生的是,当选中复选框时,其值将更改为" true"。为什么?当你得到代码是这样的:

<input type="checkbox" value="false" id="bold"/>
<input type="button" value="Give Code" onclick="printCode()"/>
<script>
function printCode() {
document.getElementById("code").innerHTML= bold.value;
}
</script>
<p id="code"></p>

在此示例中,按下按钮时,它将打印出复选框的值。它总是打印出来&#34; false&#34;。我想要它,以便勾选复选框时,其值将更改为&#34; true&#34;。这样,当它打印出值时,它可以是&#34; true&#34;或者&#34; false&#34;。

我知道jQuery可能是解决方案,但我对它很新。

感谢您的支持!

2 个答案:

答案 0 :(得分:1)

为什么不使用选中状态,取决于是否为真/假复选框,不需要值?

<input type="checkbox" value="false" id="bold" />
<input type="button" value="Give Code" onclick="printCode()" />
<script>
    function printCode() {
        document.getElementById("code").innerHTML = document.getElementById("bold").checked.toString();
    }
</script>
<p id="code"></p>

FIDDLE

答案 1 :(得分:1)

使用bold.checked而不是bold.value

document.getElementById("code").innerHTML= bold.checked;

如果您仍想使用bold.value,请将onClick功能添加到复选框:

<input type="checkbox" id="bold" value="false" onclick="this.value = this.value == 'false' ? 'true' : false"/>