2010-02-28 40 views
1

我有一個jquery自動完成領域工作正常,其次是日期輸入字段。每當用戶從自動完成列表中選擇一個項目時,它會正確選擇該項目並觸發結果(),但它也會在我的日期字段中創建「附帶損害」,並將所選自動填充項目的ID插入到其中。這是它的一種情況,但我在其他場合也注意到了它,有時如果其他輸入字段在自動填充字段之前或之後,並不重要。此外,如果有3個(任意數量)的其他字段,則所有三個字段都將插入自動完成項目ID。jQuery自動完成「其他領域的附帶損害」

這是不受歡迎的行爲,我需要擺脫它。 有人嗎?

下面的代碼:

 $("#Clients").focus().autocomplete('<%=Url.Action("GetClients", "Client") %>', { 
      dataType: 'json', 
      parse: function(data) { 
       var rows = new Array(); 
       for (var i = 0; i < data.length; i++) { 
        rows[i] = { data: data[i], value: data[i].ClientName, result: data[i].ClientName }; 
       } 
       return rows; 
      }, 
      formatItem: function(row, i, n) { 
       return row.ClientName; 
      }, 
      width: 300, 
      minChars: 0, 
      max: 0, 
      delay: 50, 
      cacheLength: 10, 
      selectFirst: true, 
      selectOnly: true, 
      mustMatch: true 
     }); 

     $("#Clients").result(function(event, data, formatted) { 
      if (data) { 
       $(this).parent().next().find("input").val(data["client_id"]); 
       if (data["ClientName"] && data["client_address1"] && data["client_postcode"] && data["client_postname"]) { 
        $("#ClientDetails").html(
        "<li class=\"clientNumber\">Client Id: " + data["client_ClientNumber"] + "</li>" + 
        "<li>" + data["ClientName"] + "</li>" + 
        "<li>" + data["client_address1"] + "</li>" + 
        "<li>" + data["client_postcode"] + data["client_postname"] + "</li>" 
        ); 
       } 
       else { 
        $("#ClientDetails").html(
        "<li class=\"clientNumber\">Client Id: " + data["client_ClientNumber"] + "</li>" + 
        "<li>" + data["ClientName"] + "</li>"); 
       } 
      } 
     }); 
+1

Post code,** always!**您的標記和您的jQuery調用將他LP。 – 2010-02-28 13:52:13

+0

你能顯示一些代碼嗎?我們可能能夠發現問題的原因。許多眼睛等... – 2010-02-28 13:53:08

+0

我已附上代碼.. – mare 2010-02-28 14:02:44

回答

0

對我來說,這條線

$(this).parent().next().find("input").val(data["client_id"]); 

看起來有點可疑。

  • 你得到與ID的 輸入控制「客戶」
  • 然後你移動到下一個項目
  • 這個項目
  • 設定值內查找所有輸入控件的父全部找到input_id的輸入控件
+0

AAAA!我怎麼能錯過!謝謝 – mare 2010-02-28 14:10:27