2015-04-29 17 views
1

即時通訊使用自動完成插件顯示用戶在輸入單詞時可供選擇的選項。這裏jquery自動完成接受,無需從下拉列表中選擇

的問題是:

此代碼將不會允許的話,如果用戶鍵入正確的單詞匹配avaible標籤,如果沒有點擊的下拉列表中顯示的項目。

我該如何解決它?這就是我所擁有的。

$("#fuente").autocomplete({ 
     source: availableTags, 
     change: function (event, ui) { 
      if (ui.item == null || ui.item == undefined) { 
       $("#fuente").val(""); 
       $("#fuente").attr("disabled", false); 
       $('#fuente').removeClass('fuenteboxCheck'); 
       $('#fuente').addClass('fuenteboxNCheck'); 
      } 
      else { 
       $('#fuente').removeClass('fuenteboxNCheck'); 
       $('#fuente').addClass('fuenteboxCheck'); 
      } 
     } 
    }); 

有沒有簡單的方法來解決這個問題,請halp。 thnx。

回答

0

好的..所以我做了一些更多的研究,並找到了一個很好的解決我的問題。 希望這可以幫助別人解決這個問題。

var lastValue; 

     var lastValue; 

     $("#fuente").autocomplete({ 
      source: availableTags, 
      select: function(event, ui) { 
       lastValue = ui.item.value; 
      }, 
      response: function(event, ui) { 
      //lastValue = ui.content.length > 0 ? ui.content[0].value : ''; 
      if(ui.content.length > 0){ 
       lastValue = ui.content[0].value; 
       $('#fuente').removeClass('fuenteboxNCheck'); 
       $('#fuente').addClass('fuenteboxCheck'); 
      } 
      else{ 
       lastValue = ''; 
       $('#fuente').removeClass('fuenteboxCheck'); 
       $('#fuente').addClass('fuenteboxNCheck'); 
      } 
      } 
     });   
     $("#fuente").on('blur', function() { 
      $(this).val(lastValue); 
     });lse{ 
       lastValue = ''; 
       $('#fuente').removeClass('fuenteboxCheck'); 
       $('#fuente').addClass('fuenteboxNCheck'); 
      } 
      } 
     }); 
     $("#fuente").on('blur', function() { 
      $(this).val(lastValue); 

     }); 
     }); 

thnx。

相關問題