在写前端时,遇到了一个在使用 checkbox 类型的 input 选择框在未选中的状态下,未被提交的问题。但由于项目需求需要 checkbox 类型的 input 在未选中时要提交为0的值,下面就写一写解决方法。

checkbox类型的 input 选择框未选中时提交0的方法

方法1:

纯HTML代码使用,定义一个与 checkbox 单选框同 name 的隐藏input输入框即可。

例:

<!--代码1-->
<input type="hidden" name="like" value="0" />
<input type="checkbox" name="like" value="1" />
<!--代码2-->
<input type="hidden" name="sex" value="0" />
<input type="checkbox" name="sex" value="1" />

注:

1、隐藏的 input 必须写在选择框前面,可以输入一个单选框未被选中时默认值

2、隐藏的 input 的name属性值必须与单选框的name属性值一样

方法2:

在后端对 checkbox 选择框提交的值进行判断

<form method="post" id="form">
<input type="checkbox" name="aa" value="飞鸟慕鱼博客" />
<input type="checkbox" name="ss" value="http://feiniaomy.com" />
<input type="submit" value="Save Changes" />
</form>

php后端提交判断

<?php
$age = isset($_POST['aa']) ? $_POST['aa'] : '百度';
$sex = isset($_POST['ss']) ? $_POST['ss'] : 'http://baidu.com';
?>