Foros del Web » Programando para Internet » Jquery »

ajax Jquery IE error "se esperaba u objeto"

Estas en el tema de ajax Jquery IE error "se esperaba u objeto" en el foro de Jquery en Foros del Web. Hola chicos! En IE no puedo ejecutar mi codigo que adjuto abajo. Me dice "se esperaba un objeto". En mozilla funciona correctamente. Código PHP: function  ...
  #1 (permalink)  
Antiguo 17/11/2008, 10:46
 
Fecha de Ingreso: septiembre-2006
Mensajes: 349
Antigüedad: 17 años, 6 meses
Puntos: 0
ajax Jquery IE error "se esperaba u objeto"

Hola chicos!

En IE no puedo ejecutar mi codigo que adjuto abajo. Me dice "se esperaba un objeto". En mozilla funciona correctamente.

Código PHP:
function quickViewCources(){ 
    $(
"#response").append("<img src='ajax-loader2.gif'/>");
    $.
get(
      
'coursesReport.php',
      {
         
dataType"xml"
        
categoryId: $("#categoryList").val()
      },
      
onAjaxSuccess
    
);
    
    function 
onAjaxSuccess(xml){
      $(
"#list").empty();
      $(
"#list").append("<tr><th class='header' scope='col'>"+$(xml).find('coursename').text()+"</th></tr>");

      var 
countCourses = $(xml).find('course').length;

          if(
countCourses){
             $(
xml).find('course').each(function(){
           
              $(
"#list").append("<tr id='"+$(this).find('courseId').text()+"'><Td>"+$(this).find('courseName').text()+"</td></tr>");
              }); 
//close each
        
} else {
            $(
"#list").append("<tr id='none'><Td>"+$(xml).find('nosearchresults').text()+"</Td></tr>");    
        }
    }    

EL xml que genera php es correcto, los datos salen correctamente formateados en mozilla.
Gracias por adelantado si alguien me puede auydar con esto.
  #2 (permalink)  
Antiguo 17/11/2008, 11:23
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ajax Jquery IE error "se esperaba u objeto"

No estás indicando bien el dataType de la petición. Entiendo que quieres indicarle a jQuery que la respuesta viene como XML, pero la función $.get(), de hecho, no acepta el dataType como parámetro.

Si quieres hacer eso, tienes que usar directamente $.ajax():
Código javascript:
Ver original
  1. $.ajax({
  2.    url: "coursesReport.php",
  3.    dataType: ($.browser.msie) ? "text" : "xml",
  4.    data: {categoryId: $("#categoryList").val()},
  5.    success: onAjaxSuccess
  6. });
O bien usar $.ajaxSetup() para establecer las opciones por defecto de todas las llamadas (aunque ahora mismo no estoy completamente seguro de que esto sirva para el dataType).

Ten en cuenta, además, que el coursesReport.php debe indicar correctamente el tipo MIME de la respuesta como "text/xml" porque si no no se cargará correctamente como XML.

Por otra parte, habría que ver el XML que recibes en la respuesta para saber si el resto está bien. Ah, y también sería una buena pista poner en qué línea da el error de "se esperaba un objeto".
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:48.