Bagikan melalui


Membuat atribut baru untuk elemen di DOM

Membuat atribut baru berbeda dari membuat jenis node lain, karena atribut bukan node. Ini adalah properti dari node elemen dan terkandung dalam XmlAttributeCollection yang terkait dengan elemen . Ada beberapa cara untuk membuat atribut dan melampirkannya ke elemen:

  • Dapatkan node elemen dan gunakan SetAttribute untuk menambahkan atribut ke kumpulan atribut elemen tersebut.

  • Buat simpul XmlAttribute menggunakan metode CreateAttribute , dapatkan simpul elemen, lalu gunakan SetAttributeNode untuk menambahkan simpul ke kumpulan atribut elemen tersebut.

Contoh berikut menunjukkan cara menambahkan atribut ke elemen menggunakan metode SetAttribute :

Imports System.IO
Imports System.Xml

Public Class Sample

    Public Shared Sub Main()

        Dim doc As New XmlDocument()
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        Dim root As XmlElement = doc.DocumentElement

        ' Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel")

        Console.WriteLine("Display the modified XML...")
        Console.WriteLine(doc.InnerXml)
    End Sub
End Class
using System;
using System.IO;
using System.Xml;

public class Sample
{
    public static void Main()
    {
        var doc = new XmlDocument();
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" +
                    "<title>Pride And Prejudice</title>" +
                    "</book>");
        XmlElement root = doc.DocumentElement;

        // Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel");

        Console.WriteLine("Display the modified XML...");
        Console.WriteLine(doc.InnerXml);
    }
}

Contoh berikut menunjukkan cara membuat atribut baru menggunakan metode CreateAttribute . Atribut kemudian ditambahkan ke koleksi atribut elemen buku menggunakan metode SetAttributeNode .

Diberikan XML sebagai berikut:

<book genre='novel' ISBN='1-861001-57-5'>
<title>Pride And Prejudice</title>
</book>

Buat atribut baru dan berikan nilai:

Dim attr As XmlAttribute = doc.CreateAttribute("publisher")
attr.Value = "WorldWide Publishing"
XmlAttribute attr = doc.CreateAttribute("publisher");
attr.Value = "WorldWide Publishing";

Lampirkan atribut ke elemen :

doc.DocumentElement.SetAttributeNode(attr)
doc.DocumentElement.SetAttributeNode(attr);

Hasil

<book genre="novel" ISBN="1-861001-57-5" publisher="WorldWide Publishing">
<title>Pride And Prejudice</title>
</book>

Sampel kode lengkap dapat ditemukan di CreateAttribute.

Jika Anda membuat atribut XmlNamedNodeMap , Anda dapat menambahkan atribut berdasarkan nama menggunakan SetNamedItem metode . Untuk informasi selengkapnya, lihat Kumpulan Simpul di NamedNodeMaps dan NodeLists.

Atribut bawaan

Jika Anda membuat elemen yang dinyatakan memiliki atribut default, maka atribut default baru dengan nilai defaultnya dibuat oleh XML Document Object Model (DOM) dan dilampirkan ke elemen . Simpul anak dari atribut default juga dibuat pada waktu ini.

Atribut node anak

Nilai simpul atribut menjadi simpul anaknya. Hanya ada dua jenis simpul anak yang valid: simpul XmlText dan simpul XmlEntityReference . Ini adalah simpul anak dalam arti metode seperti FirstChild dan LastChild memprosesnya sebagai simpul anak. Perbedaan atribut yang memiliki simpul anak ini penting saat mencoba menghapus atribut atau mengaitkan simpul anak. Untuk informasi selengkapnya, lihat Menghapus Atribut dari Node Elemen di DOM.

Lihat juga