2012-09-03 19 views
6

Esta es mi primera experiencia con el uso de JSON, así que probablemente estoy haciendo algo realmente tonto.jQuery Error de JSON: error de sintaxis, expresión no reconocida

Creé una aplicación para raspar páginas y devolver un objeto JSON.

Mi JSON devuelto es similar al siguiente (utilizando Facebook como ejemplo):

{"urlTitle":"Welcome to Facebook \u2014 Log in, sign up or learn more","urlDescription":" Facebook is a social utility that connects people with friends and others who work, study and live around them. People use Facebook to keep up with friends, upload an unlimited number of photos, post links and videos, and learn more about the people they meet."} 

Sin embargo, en FireBug me sale el error anterior (véase también la captura de pantalla).

Mi código jQuery obtiene el JSON través de AJAX y parece simple en este momento:

$("#submitButton").on("click", function(){ 


     $.ajax({ 

      url: '/miscellaneous/scrape/scrape.cfm', 
      dataType: 'json', 
      data: { 
       strURL: $.param($("#submitURL").attr("value")) 
      }, 
      type: 'POST', 
      success: function(data) { 
       alert("yes!"); 
      } 

     }); 

    return false; 

}); 

Nunca conseguir mi mensaje de éxito :(Sólo el error

¿Estoy haciendo algo realmente obviamente mal aquí?

Gracias, Michael.

enter image description here

EDITAR

Aquí es toda mi JSON como solicitada:

{"urlTitle":"Welcome to Facebook \u2014 Log in, sign up or learn more","urlImages":{"image_8":"http:\/\/static.ak.fbcdn.net\/rsrc.php\/v2\/yb\/r\/GsNJNwuI-UM.gif","image_6":"http:\/\/photos-g.ak.fbcdn.net\/photos-ak-snc7\/v85005\/226\/255889644513526\/app_104_255889644513526_1061222291.png","image_7":"http:\/\/secure-us.imrworldwide.com\/cgi-bin\/m?ci=ent156564&am=3&ep=1&at=view&rt=banner&st=image&ca=cmp7747&cr=crv72918&pc=plc220331&r=1346702536","image_4":"http:\/\/photos-a.ak.fbcdn.net\/photos-ak-snc7\/v85006\/156\/156324174503268\/app_104_156324174503268_1504955413.png","image_5":"http:\/\/photos-b.ak.fbcdn.net\/photos-ak-snc7\/v85005\/78\/344521295633922\/app_104_344521295633922_1943760717.png","image_3":"http:\/\/photos-c.ak.fbcdn.net\/photos-ak-snc7\/v85005\/14\/298987460188718\/app_104_298987460188718_170436975.png","image_2":"http:\/\/photos-g.ak.fbcdn.net\/photos-ak-snc7\/v85006\/196\/287530028007964\/app_104_287530028007964_853932327.png","image_1":"http:\/\/static.ak.fbcdn.net\/rsrc.php\/v2\/yY\/r\/2LiCtrj0cdC.png"},"urlDescription":" Facebook is a social utility that connects people with friends and others who work, study and live around them. People use Facebook to keep up with friends, upload an unlimited number of photos, post links and videos, and learn more about the people they meet."} 
+0

¿Se puede publicar una muestra del archivo json? Parece ser. Yo que podría estar mal formado. –

+2

Eso es un error Sizzle lanza. Probablemente estés pasando el JSON como un selector como '$ (json)'. – pimvdb

+0

El JSON es válido: http://jsfiddle.net/esRtf/. Como ya dijo pimvdb, parece más un error de Sizzle. * edit: * sigue siendo válido: http://jsfiddle.net/esRtf/1/. Debe estar haciendo algo con los datos que no nos está mostrando. –

Respuesta

0

Hola Basado en los comentarios sobre su pregunta .. parece que busca una manera de evitar peticiones AJAX para hacer el almacenamiento en caché. Para que usted puede intentar algo como esto ..

$.ajax({ 
     url: url, 
     data: inputs + '&ran=' + Math.rand(), 
    )}; 

o

$.ajaxSetup ({ 
    // Disable caching of AJAX responses 
    cache: false 
}); 

espero que esto le ayudará.

Cuestiones relacionadas