Dans le code suivant, si le JSON que j'essaie de lire contient une erreur de syntaxe quelque part, alors il ne dit tout simplement rien, je ne peux pas trouver d'erreur affichée dans Chrome ou Firefox qui me dit qu'il ne peut pas analyser le champ JSON. Même ce try/catch ne fonctionne pas.
Comment puis-je faire en sorte que mon code fasse quelque chose de spécifique si le JSON ne peut pas être analysé?
function init() {
elemFront = $('div.flashcard div.bodyFront');
elemBack = $('div.flashcard div.bodyBack');
console.log('before');
try {
console.log('inside try');
$.getJSON('data.txt', function(jsonResult) {
console.log(jsonResult);
});
}
catch(err) {
console.log('error');
}
console.log('after');
}
Addendum
Merci @sagi, cela a fonctionné, voici le code qui capture les problèmes de syntaxe avec les données JSON :
$.get('data.txt', {}, function(data, response){
var jsonResult;
try {
jsonResult = JSON.parse(data);
}
catch (e) {
$('div.header').html('ne peut pas charger les données car: "'+e+'"');
};
$('div.bodyFront').html(jsonResult['one']);
});