2011-08-13 7 views
0

Je veux faire autocomlplete pour la source de données à distance, je reçois toutes les données de la base de données et le renvoie en jSon, en utilisant console je vois que toutes les données ont été retournées, mais la saisie semi-automatique ne fonctionne pas « t travail, voici mon codejquery autocomplete ne fonctionne pas?

$("#cellPhoneNo").autocomplete({ 

    source: function(request, response) { 
     var param = { 
      "action": "getCellPhoneNos" 
     }; 
     $.getJSON("controllers/Customer.controller.php", param, function(result) { 
      alert('here'); //doesn't alert 
      // cellPhoneSource=result; 
     }); 
    }, 
    select: function(event, ui) { 
     alert('response'); 
    } 

}); 

EDIT

J'essaie d'obtenir la source en utilisant GET, je fais comme ça

source:function(request,response){ 
      var param= {"action":"getCellPhoneNos"}; 
      $.ajax({ 
      type: "GET", 
      url: "controllers/Customer.controller.php", 
      data: param, 
      success: function(result){ 
      alert('success'); 
      } 

      }); 
      }, 

il alerte mais autocomplete doesn ne fonctionne pas, j'essaie de mettre les valeurs dans un fichier texte et de faire le fichier dans l'url, la saisie semi-automatique fonctionne !!

Toute explication ?!

+0

quel plug-in jquery autocomplete utilisez-vous? Mettez l'URL ici. – TMS

+0

Je recommande d'utiliser [celui-ci] (http://www.devbridge.com/projects/autocomplete/jquery/) – TMS

+1

Pourquoi ne pas utiliser celui de jQuery UI ?! – ThiefMaster

Répondre

1

http://net.tutsplus.com/tutorials/javascript-ajax/how-to-use-the-jquery-ui-autocomplete-widget/

Ceci est un tutoriel sur l'utilisation du plugin autocomplete. La variable response dans votre rappel est une fonction que vous pouvez appeler pour ajouter un tableau d'éléments à la liste de saisie semi-automatique. Parse result et pousser chaque élément sur un tableau, puis appelez response(array); Si le résultat est déjà un tableau, vous pouvez appeler response(result);

0

je remarquai que dans la fonction de succès que vous ne retournez pas le résultat de la requête ajax, pourrait-il être un problème?

source : function(request,response) { 
    var param= {"action":"getCellPhoneNos"}; 
    var source = 'nothing came back from the server'; 

    $.ajax({ 
      type: "GET", 
      url: "controllers/Customer.controller.php", 
      data: param, 
      datatype: 'json' 
      success: function(result) { 

      if(result !== undefined) { 
       source = result; 
      } 
      alert(source); 
      return source; 
      } 

    }); 
}, 
+0

'source de retour' provoque une erreur qui est 'source non définie [Break On This Error] source de retour; '. – palAlaa

+0

ajouter le type de données: 'json' aux paramètres ajax –

Questions connexes