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?