我用$.ajax加载一个xml文件:
$.ajax({
   url:'data.xml',
   type:'get',
   datatype:'xml',
   error:function(){ alert('error load xml document')},
 success:function(xml){
 $('#load_data').empty();
 $('#load_data').append('<h3>我给你推荐几本书:</h3>');
 $('#load_data').append('<dl></dl>');
 $(xml).find('book').each(function(){
var html;
var $book=$(this);
var $image=$book.attr('imageurl');
html='<dt><img src="'+$image+ '"/></dt>';
$('dl').append(html)
})}})})
数据在火狐中能显示,但在IE中不能显示,各位高手帮我看看这是为什么?

解决方案 »

  1.   

    以下测试下来可以<script src="js/jquery-1.3.2.js"></script>
    <script>
    window.onload=function(){
    $.ajax({
      url:'data.xml', 
      type:'get', 
      datatype:'xml', 
      error:function(){ alert('error load xml document')}, 
    success:function(xml){ 
    $('#load_data').empty(); 
    $('#load_data').append(' <h3>我给你推荐几本书: </h3>'); 
    $('#load_data').append(' <dl> </dl>'); 
    $(xml).find('book').each(function(){ 
    var html;
    var $book=$(this); 
    var $image=$book.attr('imageurl'); 
    html=' <dt> <img src="'+$image+ '"/> </dt>'; 
    $('dl').append(html) 
    })
    }})
    }
    </script><div id="load_data"></div>
    <dl></dl>
      

  2.   

    $.ajax(
    {
    data:""
    dataType:"xml";
    contentType:"";
    beforeSend:function(XMLHttpRequest)
    {}
    success:function()
    {
    $('#load_data').empty(); 
                $('#load_data').append(' <h3>我给你推荐几本书: </h3>'); 
                $('#load_data').append(' <dl> </dl>'); 
                $(xml).find('book').each(function(){ 
                var html;
                var $book=$(this); 
                var $image=$book.attr('imageurl'); 
                html=' <dt> <img src="'+$image+ '"/> </dt>'; 
                $('dl').append(html) }
    complete:function(data)
    {
    $(#msg).html(data);
    $(#msg).css("color":"red");
    },
    error:fuction()
    {}})
      

  3.   

    $(xml).find('book');
    楼主是想找到返回的xml中的book标记?
    在IE中$(html)是有bug的,据我说知,在IE中当返回的数据过多时,这个函数不能创建jquery对象,
    你可以alert($(xml).find('book').html());测试一下,其他浏览器是可以的。
      

  4.   

    我用alert($(xml).find('book').html())测试了一下,返回值为null,这问题怎样解决啊?