Jquery多维数组自动完成

时间:2013-10-13 18:31:56

标签: jquery forms multidimensional-array autocomplete

我正在尝试使用Jquery自动完成函数从多维数组中获取数据(请参阅下面的代码),我希望用户在名为“descrizione”的表单字段上写入从数组字段“prodotto”获取结果并自动执行他确认所选产品的其他领域都已确定。 任何人都可以帮我理解代码中的错误? 谢谢你的友好合作!

<script>
$(function() {
    var availableDescrizioni = [
{ prodotto: "test test", codice_prodotto: "product_code001", prezzo: "122,22", iva: "22" },
{ prodotto: "nome_prodotto1", codice_prodotto: "cod_produttore1", prezzo: "22,22", iva: "22" }

    ];

    $("#descrizione").autocomplete({
        source: $availableDescrizioni,

        focus: function(event, ui) {
            $("#descrizione").val(ui.item.prodotto);
            return false;
        },
        select: function(event, ui) {
            $("#descrizione").val(ui.item.prodotto);
            $("#cod_prodotto").val(ui.item.codice_prodotto);
            $("#prezzo_unitario").val(ui.item.prezzo);
            return false;
        }
    });



  });
</script>


<input type="text" id="cod_prodotto" name="cod_prodotto" class="colonna col_codprodotto"/>
<input type="text" name="quantita" class="colonna col_quantita"/>
<input type="text" id="descrizione" name="descrizione" class="colonna col_descrizione"/> 
<input type="text" id="prezzo_unitario" name="prezzo_unitario" class="colonna col_prezzo"/> 
<input type="text" name="cod_iva" class="colonna col_prezzo"/>

1 个答案:

答案 0 :(得分:1)

以下是您的代码中的问题:

  • 您的availableDescrizioni变量的格式无效,无法作为自动填充小部件的来源。如果要使用Objects数组,则每个对象必须至少包含value属性,小部件使用该属性来过滤结果。 (see the doc for more details

  • 此行还有一个额外的$符号:source: $availableDescrizioni,

查看this jsFiddle以查看其实际效果