source event appendto jquery json autocomplete response

event - jquery autocomplete focus



jquery autocompleta con respuesta json (3)

Creo que solo necesitas dataType una opción de tipo de datos, recuerdo que me alegro de que puedes usar cualquiera de las opciones de $.ajax en el autocompletador:

$("#users-allowed").autocomplete("/people/following.json", { dataType: "json", ...

Estoy obteniendo respuesta en json, pero esto no analizará la respuesta de json. ¿Qué estoy haciendo mal? No pude encontrar nada en el documento http://docs.jquery.com/Plugins/Autocomplete

$("#users-allowed").autocomplete("/people/following.json", { width: 320, //max: 4, highlight: false, scroll: true, scrollHeight: 300, formatItem: function(response, i, max) { console.log(response); console.log(response[''items'']); console.log(response.items); return i + "/" + max + ": /"" + response.status_code + "/" [" + response.status_description + "]"; //return "<img src=''images/" + value + "''/> " + value.split(".")[0]; }, formatResult: function(response) { //return value.split(".")[0]; return response.status_description; } });


Intente declarar las opciones fuera del alcance de $(document).ready(..)

Ex:

var acCbo = { minChars: 1, delay:500, max: 100, width: 400, dataType: ''json'', // this parameter is currently unused extraParams: { format: ''json'', //pass the required context to the Zend Controller, filtro: ''id_procsianv,id_atividade'', chave: function(){ return $(''#id_procsianv'').val()+'',''+$(''#id_atividade'').val(); } }, queryParam: "descricao", parse: function(data) { if (data[''qtde'']>0){ data = data[''Cbo'']; var parsed = []; for (var i = 0; i < data.length; i++) { parsed[parsed.length] = { data: data[i], value: data[i].id_cbo, result: $(''<textarea/>'').html(data[i].no_cbo).val() }; } return parsed; }else{ $(''#id_cbo'').val(''''); return []; } }, formatItem: function(item) { return item.no_cbo+ '' ('' +item.id_cbo+ '')''; } }; $(document).ready(function(){ $(''#cbo'').autocomplete(''/cbos/index'',acCbo) .result(function(e,data){ $(''#id_cbo'').val(data.id_cbo); }); });


$("#users-allowed").autocomplete("/people/following.json", { width: 320, dataType: ''json'', highlight: false, scroll: true, scrollHeight: 300, parse: function(data) { var array = new Array(); for(var i=0;i<data.items.length;i++) { array[array.length] = { data: data.items[i], value: data.items[i], result: data.items[i].username }; } return array; }, formatItem: function(row) { var name = ''''; if (row.first_name && row.last_name) name = ''(''+row.first_name+'', ''+row.last_name+'')''; else if (row.first_name) name = ''(''+row.first_name+'')''; else if (row.last_name) name = ''(''+row.last_name+'')''; return row.username+'' ''+name; } });

Verifique el tipo de datos y la opción de análisis.