2010-12-02 11 views
0

JSPでJQuery UIオートコンプリートを使用しています。ユーザーのキー文字、私はサーバーに要求をし、JSONとしてデータを取得し、pulginで読み込みます。JQueryオートコンプリートの問題

正常です。しかし、前回と同じ文字をタイプするたびに。それはどんな値にも値を設定しません。

たとえば、最初にpと打ち込んだ場合、pの開始要素がリストされます。オートコンプリッターのテキスト内容をリセットするボタンがあります。リセット後、同じ文字pを入力している場合、何も表示されません。

私のコードは次のよう、

var cache = {}; 

    $("#Name").autocomplete({ 
      source: function(req, add){ 
     if (req.term in cache) { 
       add(cache[req.term]); 
       return; 
      } 
    $.getJSON("/store/StockManagement?action=getMedicinesStock",req, function(data) { 
        var medicines = []; 
        $.each(data, function(i, val){ 
        medicines.push(val.name + "," + val.code); 
      }); 

      cache[req.term] = medicines; 
      add(medicines); 
     }); 
    },select: function(e, ui) { 
     var medicine = ui.item.value; 
     $('#Code').val(medicine.split(",")[1]); 
     setTimeout(function(){ 
      var med = $('#Name').val(); 
      $('#Name').val(med.split(",")[0]); 
     },500); 
     } 
    }); 

答えて

0
// Taken from jquery-ui-1.8.4.custom.min.js 
if (a.term != a.element.val()) { // *** THE MATCH IS HERE 
    //console.log("a.term != a.element.val(): "+a.term+", "+a.element.val()); 
    a.selectedItem = null; 
    a.search(null, c) // *** SEARCH IS TRIGGERED HERE 
} 

私はちょうど状態をコメントしました。今はうまくいきます。

関連する問題