我正在使用引导程序以及 foreach 循环从 div 中的 mysql 打印数据。每个 div 都有一个“Ordered”按钮,它应该更改数据库中的一些数据,并更改特定 div 的背景颜色。我使用 onclick 函数将 div 的 id 发送到 url 并重新加载页面。当我尝试使用函数内的引导程序类更改 div 的颜色时,它只是闪烁片刻,并使用先前的颜色重新加载页面。
有人能看到我做错了什么吗?
window.addEventListener("load", function(){
let params = new URLSearchParams(location.search);
if(params.get("num")) {
<?php
$id = $_GET['num'];
$dbh = new PDO('mysql:host=...;dbname=...', '...', '...',[
PDO::ATTR_DEFAULT_FETCH_MODE=>PDO::FETCH_ASSOC]);
$stmt = $dbh->prepare('UPDATE orders SET status = 1 WHERE id = ?');
$stmt->execute([$id]);
$result = $stmt->fetchAll();
?>
document.getElementById(num).style.backgroundColor = '#fcf3d4';
alert("after the page gets reloaded");
}
});
function change(num) {
var number = num;
alert("before page gets reloaded");
window.location.href = "http://ecohfood.com/login_success.php?num=" + number;
}
<div class="col-6" id="<?php echo $v['id']; ?>">
<div id="bottom">
<button type="button" id="b<?php echo $v['id']; ?>" class="btn btn-success" onclick="document.getElementById('<?php echo $v['id']; ?>').style.backgroundColor = '#fcf3d4';
change(<?php echo $v['id']; ?>);">Ordered</button>
<button type="button" class="btn btn-danger" onclick="del(<?php echo $v['id']; ?>)">Delete</button>
</div>
相关分类