Eu quero passar uma lista para o Jquery e, em seguida, usá-lo com o widget jqueryui Autocomplete. É uma lista pequena, então eu não acho que eu preciso de um novo pedido. Então, eu acho que eu não preciso usar getJSON do Jsquery.
Eu tenho:
json_list = json.dumps(list)
context = {"json_list":json_list}
return render(request, template, context)
no jquery:
var json_list = JSON.parse({{json_list}});
$("#field").autocomplete({
source: json_list
});
Eu recebo um erro de sintaxe em "& quot":
var autores_json = JSON.parse(["Friedrich Hayek", "Milton Friedma...
Eu estou meio perdido aqui. Qualquer ajuda será apreciada.
Respostas:
2 para resposta № 1Esqueceu as cotações.
var json_list = JSON.parse("{{json_list}}");
$("#field").autocomplete({
source: json_list
});
Além disso, eu não tenho certeza se ele reconhecerá "
como um caractere de aspas, então talvez você deva tentar:
var json_list = JSON.parse("{{json_list|safe}}");
$("#field").autocomplete({
source: json_list
});
0 para resposta № 2
JSON.parse()
precisa de uma string, então adicione algumas citações.
Em segundo lugar, está tendo problemas com entidades HTML. Depois de garantir json_list
é uma string, use
JSON.parse(json_string.replace(/"/g,"""));
EDIT: Como mencionado acima, é melhor passar safe
em seguida, use regex.