Problemas com $ .getjson em determinados navegadores
-
21-09-2019 - |
Pergunta
Eu tenho um arquivo php que produz texto codificado JSON via
echo '(' . json_encode( $final ) . ')';
E eu tenho um arquivo JavaScript que busca essa página
$.getJSON(file, function(data){
var object = eval(data);
alert(object); //for testing
...
Quando qualquer navegador que não null
MAS!!! Se eu pegar o texto emitido pelo arquivo php, colá -lo em um novo arquivo e carregue isso via .getjson, ele funciona bem. É somente quando sua saída pelo PHP não funciona.
A única diferença que posso ver é que o comprimento do conteúdo do arquivo PHP é 2 a mais que o outro, não consigo descobrir o porquê.
Obrigado
ATUALIZAR
Criei uma pequena matriz para testá -lo com outros dados e está funcionando. Há algo nos meus dados que está causando o problema. Olhando agora ...
Uma chamada para Array_Merge é o culpado.
Solução 2
Eu o reduzi a uma chamada para array_merge
Isso está corrompendo os dados de alguma forma.
Outras dicas
data
não é uma string, é um objeto JSON. Portanto, avaliar não funcionará nisso. Experimente o seguinte:
$.getJSON(file, function(data){
alert(data); //for testing