我正在尝试选中复选框,但是刷新页面后,如果选中该复选框,数据库将更新为"是",但即使选中该复选框,数据库也会自动更新为"否"local.store,我希望有人可以帮助我。这是我的代码。
<form action="" method="POST">
<label for="option1">Waarschuwingsbericht inschakelen voordat het volgende pack wordt geopend als jou pack boven de 200.000 waard is?</label><input id='option1' type="checkbox" name="checkbox" value="yes"><br>
<input type="submit" value="Opslaan en nog een pack openen">
</form>
<?
if(isset($_POST['checkbox'])){
$sql = "UPDATE users SET puntenchecked = 'yes' WHERE username = '" . $usernamez . "'";
$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
}
else {
$sql = "UPDATE users SET puntenchecked = 'no' WHERE username = '" . $usernamez . "'";
$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
}
?>
<script>
$(function(){
var test = localStorage.input === 'true'? true: false;
$('input').prop('checked', test || false);
});
$('input').on('change', function() {
localStorage.input = $(this).is(':checked');
console.log($(this).is(':checked'));
});
</script>
试试这个:
<input id='option1' type="checkbox" name="checkbox" value="yes" <?php echo (isset($_POST['checkbox']))? "checked='checked'": "";?> >
替换下面的 JS 逻辑:
<script>
$(function(){
var test = localStorage.input === 'true'? true: false;
$('input').prop('checked', test);
});
$('input').on('change', function() {
localStorage.input = $(this).is(':checked');
console.log($(this).is(':checked'));
});
</script>
在此处查看更多信息。