php - 刷新页面时,表格单元格突出显示的行的颜色发生变化

标签 php jquery html mysql

我有一个表格,当选择一个选项时,它会更改表格单元格行的颜色。但是当我刷新页面时,颜色又变回默认颜色。我该如何修复表格中突出显示的颜色?

这是我的 php 和 mysql 表的代码:

<?php

    while ($record = mysqli_fetch_array($result)) {

      echo"<tr>";
      echo"<td style='text-align : center;'>" . $record['id'] . "</td>";

      echo '<select name="select" onchange="myJSFunction(this)">
                  <option></option>
                  <option>Approved</option>
                  <option>Pending</option>
                  <option>Disapproved</option>
            </select>';
      echo "</td>";
      echo "</tr>";
    }
  }

  echo "</ul>";
  echo '<a class="btn btn-lg btn-success btn-block tp" href="view.php" style="margin-left: 740px; bottom: -1px; position: relative;" onclick="history.back();">Back</a>';

?>  

这是我的 jQuery 代码,我用它来突出显示表格单元格的行:

<script type="text/javascript">

  function myJSFunction(element) {
    var color = ['none', 'green', 'yellow', 'red'];
    $('select').change(function() {
      $(this).parents('tr').css('background', color[$(':selected', this).index()]);
    })
  }

</script>

最佳答案

您可以使用cookies,您可以获得cookies的所有相关功能here

在页面顶部设置一个空白 cookie

document.cookie="saveselect=";

每次用户更改记录['id']|'选定值'、记录['id']|'选定值'等任何选择时,更新 javascript 函数中的 cookie,.....

在更新 cookie 时,您需要注意 cookie 会被覆盖而不是更新,这意味着采用现有值,将新值附加到其中并将新数据写入 cookie。

现在,当页面在 while 循环中加载时,您可以获取 cookie 的值,并通过“|”将其分解并将其转换为数组。

现在,在每个选择中搜索创建的数组,如果其值保存在 cookie 中,如果是,则使用“selected”属性选择选项。这样,您选择的值将出​​现在选择框中。

您需要将以下脚本添加到代码中。它将检查创建的所有选择,然后根据所选值更改每个选择的颜色。

<script type="text/javascript">
$(document).ready(function(){
     var color = ['none', 'green', 'yellow', 'red'];
     $('select').each(function(){
        $(this).parents('tr').css('background', color[$(':selected', this).index()]);
     })
});
</script>

我已经为您提供了完整的逻辑并创建了 jquery 来为每个选择框设置颜色。

关于php - 刷新页面时,表格单元格突出显示的行的颜色发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34261281/

相关文章:

php - 使用 Javascript/jquery 将 url 从单独的目录填充到 div 中

php - Java EE vs PHP - 为什么这么多人认为 Java 更好?

php - 将表单提交到页面并根据输入显示不同的 div

javascript - 滚动时将对象置于屏幕中心

php - 使用 join 列出 mysql 中的结果

php - 计数不正确

预加载器 gif 的 Javascript 代码删除问题

jquery - 有没有办法在 DIV 中进行视差工作

jquery - <a> 上带有子项的 HTML tabindex

javascript - window.fullScreen=true 不工作