Autocompletar jQuery usando datos JSON
Imagina un archivo json con los siguientes datos:
[
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
},
{
color: "blue",
value: "#00f"
},
{
color: "cyan",
value: "#0ff"
}
]
Usando el método autocompletado de jQuery, quiero que pueda mostrar elcolor Como opciones para seleccionar e insertar.valor en una entrada.
<input type="text" name="selector" id="selector" />
<input type="text" name="color" id="color" />
<input type="text" name="value" id="value" />
Lo anterior no necesita presentaciones. Selector para la búsqueda de los colores,input.color
concolor valor yinput.value
convalor valor.
EDITAR: Tengo estos datos 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"
}]
y este HTML:
<input type="text" id="name" />
<input type="text" id="value" />
y esta jQuery:
$(document).ready(function(){
$("#name").autocomplete({
source: "json.php",
select: function (event, ui) {
$("#name").val(ui.label);
$("#value").val(ui.value);
}
});
});
Seguí la respuesta de Andrew y me pide que seleccione los datos, pero si me alertaui.label
yui.value
Variables, dice 'indefinido'. ¿Qué me estoy perdiendo?
Edit2: Digamos que tengo este HTML:
<input type="text" class="name" />
<input type="text" class="value" />
<input type="text" class="name" />
<input type="text" class="value" />
¿Es posible manejar múltiples selectores con el mismo.autocomplete()
¿método? Me gusta, selecciona la etiqueta que quiero usando elinput.name
y solo actualizar elinput.value
¿junto a él?
[input.name] [input.value]
^ Selecciono ^ actualiza el
un valor de etiqueta al lado
[input.name] [input.value]
^ esto permanece intacto ^