2013-10-13 42 views
1

我試圖使用Jquery自動完成功能從多維數組中獲取數據(請參閱下面的代碼),我希望該用戶在名爲「descrizione」的表單字段上寫入數組字段「prodotto 「並且當他確認選擇的產品時自動設置其他字段。 任何人都可以幫助我理解代碼上的錯誤? 感謝您的合作!Jquery多維數組自動完成

<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"/> 
+0

我包括: paolo9785

回答

1

這裏是你的代碼中存在的問題:

  • availableDescrizioni變量是不是一個有效的格式是自動完成構件的來源。如果要使用Objects數組,則每個對象都必須至少包含一個由小部件用於過濾結果的屬性value。 (see the doc for more details

  • 你必須在這條線的額外$標誌:source: $availableDescrizioni,

有在this jsFiddle一看就看到它在行動

+0

非常感謝您的寶貴幫助!我嘗試了很多次,但我不知道這個價值屬性是強制性的。 – paolo9785

+0

不客氣;) – rd3n