javascript - 单击事件期间更改的复选框值未被表单数据拾取

标签 javascript checkbox onclick form-submit

我有一个“注册电子邮件更新”复选框,默认处于选中状态,值为"is"。如果不勾选,则需要设置为“否”。这不是一个完美的解决方案,但这些是在表单提交时需要提交到数据库的值。

HTML:

<input name="emailSignUpCheckbox" id="emailSignUpCheckbox" type="checkbox" value="Yes" onclick="updateSignUpCheckbox()">Sign me up!

Javascript:

var emailSignUpCheckbox = document.getElementById('emailSignUpCheckbox');

function updateSignUpCheckbox(){
    if(emailSignUpCheckbox.checked) {
        emailSignUpCheckbox.value = "Yes";
    }
    else {
        emailSignUpCheckbox.value = "No";
    }
}

该复选框的值每次都会更改,我已通过查看 DOM 或在控制台中记录该值来确认它。当以选中状态提交时(默认),"is"的值将由表单发布到数据库。

但是,如果手动取消选中,则表单不会将复选框的值发布到数据库,而是发布一个空白值。

非常感谢任何有关我可能做错的事情的建议!

最佳答案

希望这可以帮助您,another answer ,仅提交“on”值,一种解决方案是考虑如果复选框的值不在提交中,则意味着其值为“of”。

关于javascript - 单击事件期间更改的复选框值未被表单数据拾取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41592645/

相关文章:

javascript - 将 php 页面 URL 中的变量传递给 JavaScript 和另一个 PHP

c# - 从 Internet Explorer 渲染图像

javascript - php获取未选中复选框的值

javascript - 在 2 行之间放置一个复选框 jquery MVC

javascript - jquery中的点击事件比较

javascript - 我怎样才能获得下拉选择的值并形成一个数字

javascript - 如何安装用于翻转的 JS 代码

android - 如果未选中复选框,则禁用 AlertDialog PositiveButton

javascript - 使用 onclick 创建元素

jquery - 单击时添加值以形成数组