[英]How to change “buy” button color in opencart based on stock value?
根據庫存狀態更改產品中按鈕顏色的最佳方法是什么?
我已經通過“讀取” innerHTML成功使用javascript完成了此操作,如果它缺貨,我將按鈕背景設置為綠色,否則將按鈕設置為藍色...
但是,如果有5個狀態和3個翻譯,則會導致if子句大而“難看”。
我的問題是商店是多語言的,我想知道如果不使用js讀取innerHTML而只讀取狀態值(從模型或控制器...)怎么辦?
先前的“虛擬”解決方案是這樣的:
$(document).ready(function() {
var stck = $('#stocktxt').html();
if(stck.indexOf("5-") != -1){
$("#button-cart").css("background-color","#f59525");
}
});
網站是如何生成的? 我在猜PHP! 最好的辦法是讓服務器根據庫存狀態將樣式動態地應用於按鈕。 除非實時更新庫存,否則應用樣式客戶端效率低下。 顯然,庫存數據存儲在某個地方的數據庫中,您應該從中獲取數據,而不是從innerHTML中獲取數據。
<?php
//get stock value for your items
$someItemStock = 3;
function stockstyle($stock)
{
if($stock > 5)
{
echo "highStock"
}
else if($stock < 5 && $stock > 2)
{
echo "medStock"
}
else if($stock < 2 && $stock > 0)
{
echo "lowStock"
}
else
{
echo "noStock"
}
}
?>
然后在您的HTML中找到該項目:
<button id="whatever this item" class="<?php stockstyle($someItemStock) ?>">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.