如何从标签或id中自动完成显示结果



我从事php销售程序

我有一个从autocomplete列表中选择产品的输入

我只想在不显示条形码的情况下显示我用product name或带product barcode输入的产品的搜索结果

我的源数组php代码是:

$source = array();
$data = mysql_query("select * from items");
while($d = mysql_fetch_assoc($data))
{
    $array[id] = $d['id'];
    $array[value] = $d['product_name'];
    $array[lable] = $d['product_barcode'];
    array_push($source,$array);
}
$array = json_encode($source);

我的js代码是:

$('#main_item').autocomplete({
      source: <?=$array?>,
      select: function(event, ui) {
            $('.pur_items_id').last().val(ui.item.id);
            $('.item_name').text(ui.item.value);
       }
});

我需要的是,当输入barcode时,自动完成显示带有该条形码的产品而不在自动完成搜索结果中显示条形码。

好的,感谢每一位

我想出了一个解决方案

如果有任何方法可以改进该解决方案并使其变得更好,请分享

我的代码:

source = <?=$array?>;
    barcode = new Array;
    jQuery.map( source, function( n , i) {
      barcode[i] = ( n.lable );
    });
    $('#main_item').autocomplete({
          source: source,
          select: function(event, ui) {
                $('.pur_items_id').last().val(ui.item.id);
                $('.item_name').text(ui.item.value);
           }
    }).keyup(function(e,u){
        var item = $.inArray($(this).val(),barcode);
        if(item != -1)
        {
            $('.pur_items_id').last().val(source[item]['id']);
            $('.item_name').text(source[item]['value']);
        }
    });

相关内容

  • 没有找到相关文章

最新更新