javascript - js mysql php select2.js 向下拉列表添加 2 个值 其中一个应该从 js 调用

标签 javascript php mysql jquery-select2

请帮助了解如何将当前选择的颜色调用到下拉列表中的选项。

下拉列表:

enter image description here

数据库: enter image description here

php代码:

<select data-placeholder="Escolha Categoria..." class="select-search" name="categoria_id" tabindex="2" id="category_drop">
                                    <option value="">Categoria</option>
                                    <?php foreach($categorias_produtos as $categoria_produto){ ?>
                                        <option value="<?php echo $categoria_produto->categoria_id; ?>"><?php echo $categoria_produto->categoria_nome; ?></option>
                                        <?php } ?>
                                    </select>

js代码:

<script>
function format(produto) {
    if (!produto.id) return produto.text; // optgroup
    return "<em class='fa fa-circle space_for_product' style='color:<?php

    foreach($categorias_produtos as $categoria_produto){
        echo $categoria_produto->categoria_cor;
    }

    ?>'></em>" + produto.text;
}
$("#category_drop").select2({
  formatResult: format
});

这是结果:

<div class="select2-result-label"><em class="fa fa-circle space_for_product" style="color:#ff0040;#ff4000;#00ff40;#00bfff;#ffff00;#bfff00;#4000ff;#ffbf00;#ff00bf;"></em>Farinhas</div>

那么如何从数据库中为下拉列表中的每个项目调用正确的颜色?

最佳答案

要解释的 PHP 代码必须通过服务器。

对于 javascript,是浏览器中的控制台执行的。所以如果你把一些 php 放在 Js 代码里面。它不会起作用。

解决方案是先获取颜色并将它们写入一个带有 id 的不可见 block 中,然后通过 javascript 获取值

 <?php 
      echo '<div id="colors" display = "none">';
      foreach ($ categorias_produtos as $ categoria_produto) {
         echo "$ categoria_produto-> categoria_cor"." ,";
     }
       echo '</ div>';
 ?>

然后你将使用:

<script>
        colorString = document.getElementById("colors").value;
        colorArray = colorString.split(",");
</script>

我希望这对你有用。美好的一天。

关于javascript - js mysql php select2.js 向下拉列表添加 2 个值 其中一个应该从 js 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33696281/

相关文章:

php - Yii Framework - 通过同一个 "through"表的两个关系

javascript - 为什么我的图表在 Chrome 中是错误的?

javascript - 在 Phonegap 应用程序中使用 JavaScript 将表单数据保存到本地存储

php - 使用 sparks 和 active record 设置 codeigniter 时出现问题

php - 如何在 MySQL 中高效地 INSERT 大量行?

c# - 通过 WCF 服务返回 MySqlDataAdapter 列表导致错误

MySQL 动态查询使用来自查询本身的信息

javascript - 如何使用 Javascript/JQuery 将 date_select 值构造为单一日期格式?

javascript - 仅在满足条件时执行一次 if 语句

php - 寻找更好的方法从带有多个查询的sql表中选择php