javascript xml ile listeleme
javascript xml ile listeleme
JavaScript ile XML (eXtensible Markup Language) kullanarak veri listeleme, web sayfalarının dinamik ve verimli hale gelmesini sağlar. Bu makalede, JavaScript ile XML kullanarak veri listeleme işlemlerinin nasıl yapıldığını ve teknik detaylarını anlatacağız.
XML, verileri tanımlayan etiketler aracılığıyla saklamak için kullanılan bir metin tabanlı veri biçimidir. JavaScript ile XML kullanarak verileri okumak ve işlemek, web sayfalarının dinamik hale gelmesini sağlar. Bu sayede, web sayfası kullanıcı tarafından değiştirilmeden bile dinamik bir şekilde güncellenir.
JavaScript ile XML verilerini okumak için XMLHttpRequest nesnesini kullanılır. Bu nesne, web sunucusundan asenkron olarak veri almak ve işlemek için kullanılmaktadır. Örne, aşağıdaki kod bloğu, web sunucusundan “data.xml” dosyasını alır ve içeriğini “myDiv” adlı bir HTML div elementine yerleştirir:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("myDiv").innerHTML = this.responseText; } }; xhttp.open("GET", "data.xml", true); xhttp.send();
Bu kod bloğunda, ilk olarak XMLHttpRequest nesnesi oluşturulmakta. Nesnenin “onreadystatechange” özelliği kullanılarak belirli bir durumda ne olması gerektiği tanımlanır. Bu durumda, readyState 4 ve status 200 olduğunda, “myDiv” adlı HTML div elementinin içeriği responseText özelliği ile güncellenecektir. “open” ve “send” metodları kullanılarak web sunucusundan “data.xml” dosyası istenir.
XML verileri, JavaScript ile daha kolay işlenebilir hale getirmek için, “DOM Parser” kullanılabilir. Bu, verileri bir arbre şeklinde saklamak için kullanılan bir yapıdır. Aşağıdaki kod bloğu, “data.xml” dosyasını okur ve her bir “item” elementinin “title” ve “description” öğelerini alıp ekrana yazdırır:
var parser, xmlDoc; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { parser = new DOMParser(); xmlDoc = parser.parseFromString(this.responseText,"text/xml"); var items = xmlDoc.getElementsByTagName("item"); for (var i = 0; i < items.length; i++) { var title = items[i].getElementsByTagName("title")[0].childNodes[0].nodeValue; var description = items[i].getElementsByTagName("description")[0].childNodes[0].nodeValue; console.log(title + " - " + description); } } }; xhttp.open("GET", "data.xml", true); xhttp.send();
Bu kod bloğunda, XML verileri DOM Parser aracılığıyla parse edilmektedir . “item” etiketleri arasındaki “title” ve “description” öğelerine erişilecektir. Bu öğelerin içeriği ekrana yazılacaktır.
Bu makalede, JavaScript ile XML kullanarak veri listeleme işlemleri hakkında genel bir bakış sunulmuştur. Bu işlemleri uygulamak için gerekli olan XMLHttpRequest nesnesi ve DOM Parser kullanımı açıklandı. Bu tekniklerin nasıl kullanılacağını öğrendiğinizde, dinamik ve verimli web sayfaları oluşturmak için gerekli olan araçları elinizde bulundurursunuz.
“data.xml” dosyası, verileri saklamak için kullanılan bir XML dosyası olmalıdır. Örnek olarak , aşağıdaki gibi bir dosya yapısını kullanabilirsiniz:
<?xml version="1.0" encoding="UTF-8"?> <items> <item> <title>Item 1</title> <description>Description of Item 1</description> </item> <item> <title>Item 2</title> <description>Description of Item 2</description> </item> <item> <title>Item 3</title> <description>Description of Item 3</description> </item> </items>
Bu dosya yapısında, veriler “items” etiketi içinde “item” etiketleri arasında saklanır. Her bir “item” etiketi içinde “title” ve “description” etiketleri kullanılmaktadır. “title” etiketi, verinin başlığını ve “description” etiketi, verinin açıklamasını içerir. Gerçek uygulamalarda daha fazla etiket ve veri içerebilmektedir.