繁体   English   中英

根据单个数字值 0/1 的结果,为 DIV 显示不同的背景颜色

[英]Display different background color for DIV's, based on a result individual digits value 0/1

在一种形式中,我正在使用 java 脚本形成一个字符串,并将其结果收集到 SQLite 表中,即 state 的 12 个复选框,位于二进制值字符串(如“000011111100”)下。

<script>
const checkboxes = [...document.querySelectorAll('input[type=checkbox]')];
function RegMD() {
  document.getElementById("mounths").textContent = checkboxes.reduce((a, b) => a + (b.checked ? 1 : 0), "");
  document.getElementById("results").innerHTML = document.getElementById("mounths").innerHTML;
}
</script>

字符串形成后通过 POST 方法发送到 SQLite 表中。 回调这个值也很简单,因为我可以用 PHP 脚本回显它(或多或少像这样)

<?php
  try {
    $conn = new PDO('sqlite:db/MyDatabase.db');
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT months FROM MyTable where MyID='this_value'");
    $stmt->execute();
    $data = $stmt->fetchcolumn(PDO::FETCH_ASSOC);
    if ( !empty($data) ) {
      echo $data['mounths'];
      }
    } else {
      echo "Record missing!";
    }
} catch(PDOException $e) {
  echo "Error: " . $e->getMessage();
}
$conn = null;
?>

这个值不需要可见,我可以隐藏它或者根本不回显它。 但我想以不同的方式使用它。 当我回忆起这个值时,我希望它把它分成单独的值“0”和“1”,并根据这些值,我想将 12 个 DIV(或表格单元格)着色为一些预定义的 colors:

$color1 = red;
$color2 = white;

我知道为了实现我的目标,我应该从这里做一些类似的事情,并以某种方式对其进行调整: Change Row background color based on cell value

     $data( function(value){
            if(value == "0"){
                html += '<div style="background-color: red;">'+some_content+'</div>';
            }
            else{
                html += '<div style="background-color: white;">'+some_content+'</div>';
            }
        });

我在这些文章中发现了一些类似的问题(着色和拆分),但我自己无法应用: PHP - 根据 mysql 行结果显示不同的图像 根据条件拆分为不同的行SQL - 根据不同的月份将行拆分为多个基于结果的行颜色 PHP 将 SQL 行数组拆分为多个 arrays 基于日期在 ng-repeat 中基于 $index 拆分 div 背景颜色

你能帮我实现这样的目标吗: 年度最佳 从我从数据库中调用字符串值的步骤开始(数据库列名“mounths”)?

<p hidden><?php echo $data['mounths']; ?></p> 

如果不需要隐藏结果就更好了。

$html  = ''; // predefine $html in case array is empty 
foreach($data as $column=>$value){
   $color = !$value ? 'red' : 'white'; // set color based on value
   $html.="<div style='color:$color;'>--Some-Content--</div>"; // append to html
}
echo $html;

暂无
暂无

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

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