Tengo una petición muy estándar AJAX:¿Por qué no es este simple bit de jQuery getJSON trabajando en IE8?
$.getJSON('/products/findmatching/38647.json', {}, function(JsonData){
var tableHtml = '';
var x;
for (x in JsonData.matchingProds) {
var matchingProd = JsonData.matchingProds[x];
var buyMessage;
if (x == 0) {
buyMessage = 'Buy Cheapest';
}
else {
buyMessage = 'Buy from this shop';
}
tableHtml = tableHtml + '<tr><td><img height="40" src="' + matchingProd.img_url + '" alt="' + matchingProd.name + '" /></td> \
<td><a href="' + matchingProd._page_url + '">' + matchingProd.name + '</a></td> \
<td><a href="' + matchingProd._merchant._url + '">' + matchingProd._merchant.title + '</td> \
<td align="right">£' + matchingProd.price + '</td> \
<td><a href="' + matchingProd.referral_url + '">' + buyMessage + '</a></td></tr>';
}
$('#matchingproducts tbody').html(tableHtml);
$('#loading').delay(1000).fadeOut();
});
Funciona bien en todos los navegadores excepto IE. Ya no hago mucho en IE ya que tengo una Mac, pero tengo IE8 en una máquina virtual XP. Usar sus herramientas de depuración incorporadas realmente no ha ayudado (no son muy buenas). Lo único que puedo entender es que en algún momento recibo un error de "identificador esperado".
¿Podría ser esto en los datos JSON que se devuelven? ¿Cómo puedo examinar esa información desde el punto de vista de IE?
¿Puede proporcionar una muestra en el sitio que podamos leer detenidamente? ¿Lo has probado en Chrome? Si es así, ¿qué errores aparecen (si los hay) después de que se ejecuta el script cuando abre el inspector de elementos? ¿Cómo se ve el JSON sin formato? – treeface
Parece que tiene una coma al final en su JSON, eche un vistazo y vea si ese es el caso. –
@treeface agregó un enlace para que eche un vistazo a – simonhamp