繁体   English   中英

JS检查是否选中复选框保留初始值

[英]JS check if checkbox is checked keep initial value

我有一个表单,用于更新带有多个复选框的个人数据,这些复选框可以被初始检查或不被检查。

<form method="post" id="up_mission">
    <input checked type="checkbox"  id="first">
    <input type="checkbox"  id="second">
    <button class="btn btn-default" type="submit" id="update_mission<?php echo $id_mission ?>"</button>
</form>

和JS:

$(function() {
        $("form[id^='up_mission']").submit(function() {
         var value1 = document.getElementById("first").checked;
         var value2 = document.getElementById("second").checked;
         $.post("update_mission.php", {value1: value1, value2:value2}, functon(data) { console.log(data) });
    });
});

update_mission.php有一个简单的SQL查询可使用新闻值进行更新,我也可以执行var_dump($_POST); 并且为第一和第二打印的值始终是我最初在<input><input> ,如果我取消选中或选中复选框,则无所谓。

我该如何解决?

这是php文件的一部分:

var_dump($_POST);
$first = $_POST['value1'];
$second = $_POST['value2'];
if ($first == "true") { $first = "on";}
else {$first = "0";}
if ($second == "true") { $second = "on";}
else {$second = "0";}
update_miss = "UPDATE table SET First = 'first', Second = 'second'[...] WHERE my_condition";
// I connect to my DB, and do the query, and there is no problem here
// I also have text input in my form and they update pretty well   

使用$('#first').is(':checked')$('#second').is(':checked')检测复选框的状态。

$(function() {
    $("form[id^='up_mission']").submit(function() {
     var value1 = $('#first').is(':checked') ? 1 : 0;
     var value2 = $('#second').is(':checked') ? 1 : 0;
     $.post("update_mission.php", {value1: value1, value2: value2}, functon(data) { console.log(data) });
});
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM