JQuery и AJAX - PullRequest
       38

JQuery и AJAX

1 голос
/ 04 мая 2010

Может ли кто-нибудь помочь с фрагментом jQuery, который будет использовать Ajax для загрузки XML-файла при загрузке страницы?

Здесь есть действительно неуклюжий способ сделать это без jQuery:

<script type="text/javascript">
function  loadXMLDoc()
{
  if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
     xmlhttp=new XMLHttpRequest();
  }
  else
  {// code for IE6, IE5
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange = function()
  {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
      xmlDoc = xmlhttp.responseXML;
      var txt = "";
      x = mlDoc.getElementsByTagName("title");
      for (i=0;i<x.length;i++)
      {
        txt = txt + x[i].childNodes[0].nodeValue + "<br />";
      }
    document.getElementById("checkedIn").innerHTML=txt;
    }
  }
  xmlhttp.open("GET", "data.xml", true);
  xmlhttp.send();
}
</script>

В идеале, если щелкнуть мышью, будет создан список, который он будет делать при загрузке страницы, с отображением полей из XML (заголовок, автор и проверен ли он) или нет

обнял бы тебя за решение

Ответы [ 2 ]

5 голосов
/ 04 мая 2010
$( function() {
 $.ajax( { 
     url: 'ajax.xml',
     type: 'GET',
     dataType: 'xml',
     success: function( response ) {
        var books = $( response ).find( 'book' );
        var list = $( '#booklist' );
        $( books ).each( function() {
            var checkedOut = ( $( this ).attr( 'checked-out' ) == '1' );
            var title = $( this ).find( 'title' );
            var li = $( '<li></li>');
            if( checkedOut ) {
               li.addClass( 'selected' );
            }
            li.html( title );
            list.append( li );
        });
     }
 });
});
1 голос
/ 04 мая 2010

Почему вы не используете JQuery простой AJAX-запрос?

$(document).ready(function() {
    $.ajax({
        url: "file.xml",
        dataType: "xml",
        success: function() {
            // on success here
        }
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...