1

我正在尝试使用 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"/>
4

1 回答 1

1

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

  • 您的availableDescrizioni变量不是作为自动完成小部件来源的有效格式。如果要使用 Objects 数组,则每个对象必须至少包含一个value属性,小部件使用该属性来过滤结果。(有关详细信息,请参阅文档

  • $你在这条线上有一个额外的标志:source: $availableDescrizioni,

看看这个 jsFiddle看看它的实际效果

于 2013-10-13T21:21:24.463 回答