J'utilise JQuery UI Autocomplete dans ma JSP. Chaque fois que l'utilisateur tape le caractère, j'ai fait la demande au serveur et obtenir les données comme JSON et charger avec le pulgin.JQuery Saisie semi-automatique Problème
Cela fonctionne très bien. Mais chaque fois que j'ai tapé le même caractère que le terme précédent. Il ne remplit aucune valeur.
Par exemple, d'abord, j'ai tapé p, il liste les p éléments de départ. J'ai le bouton pour réinitialiser le contenu du texte de autocompleter. Après la réinitialisation, si je tape le même caractère p, cela ne montre rien.
mon code comme suit,
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);
}
});