Select2 Ajax Méthode De Ne Pas Choisir

Ok, je suis sûr qu'il ya quelque chose de simple mal réglé d'ici, mais je ne suis pas à 100% ce que c'est.

Donc je suis en train d'utiliser Select2 AJAX méthode comme un moyen d'utilisateurs à la recherche d'une base de données et sélectionnez un résultat. L'appel lui-même est de retour avec les résultats, mais il ne me permet pas de sélectionner la réponse de la liste. Il ne semble pas non plus pour vous permettre de "sélectionner" sur passez la souris ou les flèches haut/bas. Donc, sans plus tarder, voici mon code:

index.html

<html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
        <link rel="stylesheet" type="text/css" href="select2/select2.css" media="screen" />
        <script src="select2/select2.js"></script>
        <script src="select.js"></script>
    </head>
    <body>
        <input type="text" style="width: 500px" class="select2">
    </body>
</html>

select.js

jQuery(function() {

  var formatSelection = function(bond) {
    console.log(bond)
    return bond.name
  }

  var formatResult = function(bond) {
    return '<div class="select2-user-result">' + bond.name + '</div>'
  }

  var initSelection = function(elem, cb) {
    console.log(elem)
    return elem
  }

    $('.select2').select2({
      placeholder: "Policy Name",
      minimumInputLength: 3,
      multiple: false,
      quietMillis: 100,
      ajax: {
        url: "http://localhost:3000/search",
        dataType: 'json',
        type: 'POST',
        data: function(term, page) {
          return {
            search: term,
            page: page || 1
          }
        },
        results: function(bond, page) {
          return {results: bond.results, more: (bond.results && bond.results.length == 10 ? true: false)}
        }
      },
      formatResult: formatResult,
      formatSelection: formatSelection,
      initSelection: initSelection
    })
})

Réponse JSON

{
  error: null,
  results: [
    {
      name: 'Some Name',
      _id: 'Some Id'
    },
    {
      name: 'Some Name',
      _id: 'Some Id'
    }
  ]
}

Tout semble tirer correctement, cependant je n'arrive pas à sélectionner la réponse et de l'avoir saisie dans la boîte. Est-il un problème quelque part dans mon code?

  • Après enquête, lorsque je modifie la liste déroulante de la classe de choisir 2-résultat-ne peut pas être sélectionnée pour choisir 2-résultat-sélectionnable tout semble fonctionner correctement.
  • J'aimerais éviter de faire de votre jquery appel avec une classe et d'utiliser un id à la place. $('#thisSelect').select2({......
  • Je ne sais pas comment cela aurait de l'importance à tous.
  • Si vous arrive d'être à l'aide de 2 de ces select2 implémentations sur le même formulaire/page), puis en tapant un, il serait à placer les résultats dans les deux. Les cours sont conçus pour être admis à des fins de réutilisation, bien que les id doivent être à usage unique.
InformationsquelleAutor AlbertEngelB | 2013-02-11