如果选中/取消选中复选框,则启用/禁用提交按钮?

Hel*_*der 13 html javascript forms validation

如何在我的HTML表单中启用提交按钮,如果未选中复选框则禁用?

这段代码有什么问题?

EnableSubmit = function(val)
{
    var sbmt = document.getElementById("Accept");

    if (val.checked == true)
    {
        sbmt.disabled = false;
    }
    else
    {
        sbmt.disabled = true;
    }
}                       
Run Code Online (Sandbox Code Playgroud)

复选框

<td width="30%">Do you accept Terms of Service agreement?</td>
<td width="10px" style="min-width: 10px"></td>
<td width="70%">
    <input type="checkbox" name="TOS" value="Accept" onClick="EnableSubmit"> I agree to Terms of Service agreement.
</td>
Run Code Online (Sandbox Code Playgroud)

Pau*_*uno 14

将您的HTML更改为:

<td width="30%">Do you accept Terms of Service agreement?</td>
<td width="10px" style="min-width: 10px"></td>
<td width="70%">
    <input type="checkbox" name="TOS" value="Accept" onClick="EnableSubmit(this)"> I agree to Terms of Service agreement.
</td>
Run Code Online (Sandbox Code Playgroud)

理由是它不起作用:你没有传递任何功能.实际上,因为您没有使用带有函数名称的括号,所以您根本没有调用该函数.thisonclickHTML事件属性的上下文中传递它意味着您正在传递对元素的DOM对象的引用,使您可以访问其checked属性.

  • 您是否可以重新输入您的问题以包含表单的其他来源(HTML)?您可能正在使用的任何其他JavaScript? (2认同)