Salve, amigos!
Estou criando um pequeno framework para a função 'auto-complete'.
Sei que temos o Jquery-Ui, mas quero criar algo que eu tenha a satisfação de ter feito.
Porém, estou com um problema um tanto quanto estranho.
Todo o retorno das informações do meu DB são feitas em JSON, e então crio um laço each com Jquery para ler todo o array:
$.ajax({ url: "AutoComplete.php", type: 'GET', dataType: 'json', data: {input: objeto, key: keyWord }, }) .done(function(resposta) { html = "<datalist id="+list+">"; $.each(resposta, function(i){ html +="<option value="+this.nome+">"; }); html += "</datalist>"; $('.JanelaSistema').append(html); }) .fail(function() { console.log("error"); })
No meu db, possuo 3 registros na tebela "clientes"
ID | Nome
01 | Lucas Cardial
02 | Marilene Barbosa
03 | Zuleide Conceição
Lá no each, quando atribuo o valor da tag option:
$.each(resposta, function(i){ html +="<option value="+this.nome+">"; });
Eu deveria ter o seguinte resultado:
<option value="Lucas Cardial"> <option value="Marilene Barbosa"> <option value="Zuleide Conceição">
Mas o que isto é o que ocorre :
<option value="Lucas" Cardial> <option value="Marilene" Barbosa> <option value="Zuleide" Conceição>
Qualquer valor depois do espaço, fica fora da propriedade value.
Este é o resultado em json:
[ {"id":"1","nome":"Lucas Vinicius"}, {"id":"2","nome":"Marilene Barbosa"}, {"id":"5","nome":"Zuleide Conceicao"} ]
Aguardo ansiosamente!