Curs Javascript

XML (Extensible Markup Language) e un format special de trimitere si stocare date in fisiere cu extensia .xml, cu o sintaxa bazata pe tag-uri. Documentele XML sunt de obicei folosite in aplicatii web de accesare date de la un server la altul.
Acest tutorial arata cum puteti prelua date dintr-un fisier XML si sa le afisati in pagina web, folosind jQuery Ajax.


Iata un exemplu.
Mai intai se creaza un document XML simplu, intr-un fisier denumit "webpages.xml":
<?xml version="1.0" encoding="utf-8"?>
<webpages>
  <course id="1">
    <title>Curs JavaScript</title>
    <url>https://marplo.net/javascript</url>
  </course>
  <course id="2">
    <title>Curs jQuery</title>
    <url>https://marplo.net/javascript/curs-jquery-tutoriale-js</url>
  </course>
</webpages>

Acum se creaza codul HTML si jQuery pentru o pagina web care va afisa intr-un DIV date din acest document XML.
Pagina contine un buton care la click pe el va apela o functie jQuery ajax(), aceasta acceseaza fisierul XML creat mai sus (webpages.xml), preia date din el (id, title, si url), apoi le adauga intr-un <div> in pagina.
Pentru a lucra cu XML in jQuery, trebuie sa setati optiunea dataType:"xml" in metoda ajax() (vedeti si comentariile din cod):
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>jQuery Ajax - XML</title>
<script type="text/javascript" src="jquery_1.6.1.js"></script>
<script type="text/javascript"><!--
$(document).ready(function() {
  // la click pe tag-ul cu id="buton" se executa o cerere Ajax prin GET la un fisier XML
  // preia datele XML si afiseaza: id, title, si url
  $('#buton').click(function() {
    $.ajax({
      type: 'get',
      url: 'webpages.xml',
      beforeSend: function() {
        // inainte de a trimite cererea, afiseaza o notificare de "Incarcare..." in "#resp"
        $('#resp').html('Incarcare...');
      },
      timeout: 10000,        // timpul maxim permis pt. executia cererii (10 secunde)
      error: function(xhr, status, error) { alert('Eroare: '+ xhr.status+ ' - '+ error); },     // alert in caz de eroare
      dataType: 'xml',
      success: function(response) {
        $('#resp').html('');        // sterge notificarea "Incarcare..." din "#resp"

        // acceseaza fiecare element copil din <webpages>
        $(response).find('webpages').children().each(function() {
          // preia "id", "title", si "url" din elementul curent
          var elm = $(this);
          var id = elm.attr('id');
          var title = elm.find('title').text();
          var url = elm.find('url').text();

          // adauga datele in "#resp"
          $('#resp').append(id+ ') Titlu: <b>'+ title+ '</b> -- URL: <b><i>'+ url+ '</i></b><br />');
        });
      }
    });
  });
});
--></script>
</head>
<body>
<div id="resp">Aici vor fi afisate datele din fisierul XML.</div><br />
<button id="buton">Click</button>
</body>
</html>

- obiect_jQuery.children().each() - preia fiecare element inclus direct in "obiect_jQuery".
- elm.attr('id') - returneaza valoarea atributului "id".
- elm.find('url').text() - returneaza textul din tag-ul <url> inclus in "elm".

Demo:
Aici vor fi afisate datele din fisierul XML.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Clic pe tag-ul care creaza celula in tabel.
<tr> <span> <td>
<table></tr>
  <td>Cell-1</td><td>Cell-2</td>
</tr></table>
Indicati proprietatea CSS care adauga o imagine pentru fundal
background-color background-image color
h3 {
  background-image: url("image.jpg");
}
Ce instructiune se foloseste la parcugerea elementelor unui Array?
for() [) object()
var arr = [1, "ab", "CoursesWeb.net"];
for(var i=0; i< arr.length; i++) { alert(arr[i]); };
Indicati functia PHP utilizata la parcurgerea elementelor unui Array asociativ.
for() foreach() if()
$arr =["k1"=>"v1", "k2"=>"v2", "k3"=>"v3");
foreach($arr AS $k => $v) { echo "<br/>". $k ." - ". $v; }
Care din urmatoarele cuvinte este sinonim cu "gentle" (bland)?
meek good beautiful
He is so kind and meek.
- El este atat de amabil si bland.
Care din urmatoarele cuvinte este sinonim cu "amable" (bland, prietenos)?
hermoso fuerte manso
Tu padre tiene un carácter muy manso.
- Tatal tau are un caracter foarte bland.
jQuery - prelucrare date XML

Last accessed pages

  1. Parábolas y Cuentos de Sabiduría (794)
  2. Linie si Text (622)
  3. Cursuri limba engleza gratuite si lectii online (66449)
  4. Creare si editare pagini HTML (85853)
  5. Acabar + Infinitiv (1541)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1245)
  2. Coduri pt culori (903)
  3. Cursuri limba engleza gratuite si lectii online (601)
  4. Gramatica limbii engleze - Prezentare Generala (536)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (487)