Wyobraźmy sobie plik json z następującymi danymi:autouzupełniania jQuery danych za pomocą JSON
[
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
},
{
color: "blue",
value: "#00f"
},
{
color: "cyan",
value: "#0ff"
}
]
Stosując metodę autouzupełniania jQuery, chcę być w stanie wyświetlić kolorjako opcji, aby wybrać i wstawić wartość na wejściu.
<input type="text" name="selector" id="selector" />
<input type="text" name="color" id="color" />
<input type="text" name="value" id="value" />
Powyższe nie wymaga prezentacji. Selektor do wyszukiwania w kolorach, input.color
o wartości kolor wartość i input.value
z wartością wartość wartość.
EDIT: mam te dane JSON:
[{
"label": "Sec\u00e7\u00e3o 1",
"value": "1"
}, {
"label": "Sec\u00e7\u00e3o 2",
"value": "2"
}, {
"label": "Sec\u00e7\u00e3o 3",
"value": "3"
}, {
"label": "Sec\u00e7\u00e3o 4",
"value": "4"
}]
i to HTML:
<input type="text" id="name" />
<input type="text" id="value" />
i ten jQuery:
$(document).ready(function(){
$("#name").autocomplete({
source: "json.php",
select: function (event, ui) {
$("#name").val(ui.label);
$("#value").val(ui.value);
}
});
});
Śledziłem odpowiedź Andrzeja i go prosi mnie o wybranie danych, ale jeśli powiadomię ui.label
i ui.value
zmiennych, mówi "niezdefiniowany". czego mi brakuje?
Edit2: Powiedzmy mam to HTML:
<input type="text" class="name" />
<input type="text" class="value" />
<input type="text" class="name" />
<input type="text" class="value" />
to możliwe, aby obsłużyć wiele selektorów w taki sam sposób .autocomplete()
? Na przykład wybierz etykietę, którą chcę, używając input.name
i zaktualizuj tylko numer input.value
obok?
[input.name] [input.value]
^ ja wybrać ^aktualizuje
etykietę wartość obok
[nazwa wejściowa] [wartość wejściowa]
^ ta pozostaje nienaruszona^
Czy używasz zdalnego lub lokalnego źródła danych? –
Będzie to plik php pobierający wartości z DB i kodujący je w formacie JSON ... – silentw
Nie próbowałem zbyt wiele, ponieważ wciąż próbowałem dowiedzieć się, jaki jest właściwy sposób korzystania z autouzupełniania jQuery ... – silentw