jquery autocomplete根据数据库的值更改背景颜色

时间:2014-09-30 00:59:01

标签: jquery autocomplete

Quiero cambiar el color de fondo de la lista,cuando la CANTIDAD DE PRODUCTOS que tengo en la base de datos sea menor o igual a 1. Esto funciona bien,solo que no se como cambiar el fondo。

GOOGLE TRANSLATE:)

您好,我来自阿根廷。我想在数据库中的产品数量小于或等于1时更改列表的背景颜色。这样可以正常工作,只是不知道如何更改背景。

<input type="text" value=""  id="mercaderia"   >


$("#mercaderia").autocomplete({
     source: "autocompletemer.php",         
     minLength: 2,
     html: 'html',
     focus: function(event, ui) {
            // prevent autocomplete from updating the textbox
            //event.preventDefault();
            // manually update the textbox
            //$(this).val(ui.item.label);
        },
     select: function(event, ui) {
            // prevent autocomplete from updating the textbox
            //event.preventDefault();
            // manually update the textbox and hidden field
            //$(this).val(ui.item.label);
            //$("#autocomplete2-value").val(ui.item.value);
        }               
});

Intento hacerlo desde php pero no queda bien 我尝试从PHP做但不适合

<?php
//defino una clase que voy a utilizar para generar los elementos sugeridos en autocompletar
class ElementoAutocompletar {
   var $value;
   var $label;

   function __construct($label, $value){
      $this->label = $label;
      $this->value = $value;
   }
}

//recibo el dato que deseo buscar sugerencias
$datoBuscar = $_GET["term"];

//conecto con una base de datos
$conexion = mysql_connect("localhost", "root", "");
mysql_select_db("base_ropa");

//busco un valor aproximado al dato escrito
$ssql = "SELECT id, titulo, precio, cantidad FROM mercaderia WHERE titulo LIKE '%" . $datoBuscar . "%' LIMIT 10";
$rs = mysql_query($ssql);

//creo el array de los elementos sugeridos
$arrayElementos = array();

//bucle para meter todas las sugerencias de autocompletar en el array
while ($fila = mysql_fetch_array($rs)){
    $temp = $fila["titulo"].":".str_replace('.',',',$fila[precio]).":".$fila[cantidad];

    $t = explode(":", $temp);
    if ($t[2] <= 1) {
        $temp1 = str_replace(strtolower($datoBuscar), '<span style="background-color:red">"<b class="ot4">'.$datoBuscar.'</b>', '<b>'.strtolower($t[0]).' - &lt;</b>');     
        $temp = str_replace('&lt;', '<span class="ot2"> $'.$t[1].'</span></span>', $temp1);
    }else {
        $temp1 = str_replace(strtolower($datoBuscar), '<b class="ot">'.$datoBuscar.'</b>', '<b>'.strtolower($t[0]).' - &lt;</b>');      
        $temp = str_replace('&lt;', '<span class="ot2"> $'.$t[1].'</span>', $temp1);
    }

            //$respuesta .= "<li style='background-color: #FFDDDD;'>".$temp."</li>";
        //else
            //$respuesta .= "<li>".$temp."</li>";



    array_push($arrayElementos, new ElementoAutocompletar($temp, $fila["titulo"].' - $'.$fila["precio"])); //$fila["id"]
}

print_r(json_encode($arrayElementos));
?>

1 个答案:

答案 0 :(得分:0)

这不安全: $ datoBuscar = $ _GET [&#34; term&#34;];

$ ssql =&#34; SELECT id,titulo,precio,cantidad FROM mercaderia WHERE titulo LIKE&#39;%&#34; 。 $ datoBuscar。 &#34;%&#39;限制10&#34 ;;

这不能回答您的原始问题,但此代码可能会受到损害。