最新のWeb開発のチュートリアル
 

XML DOMは、ノードを削除します


removeChild()メソッドは、指定されたノードを削除します。

removeAttribute()メソッドは、指定された属性を削除します。


それを自分で試してみてください - 例

例としては、XMLファイルの使用のBooks.xmlを

要素ノードを削除します
この例では、使用removeChild()最初に除去するために<book>要素を。

現在の要素ノードを削除します
この例では、のparentNodeと使用removeChild()現在削除するには<book>要素を。

テキストノードを削除します
この例では、使用removeChild()最初からテキストノードを削除するには<title>要素。

テキストノードのテキストをクリア
この例では、使用nodeValue()最初のテキストノードクリアするプロパティを<title>要素を。

名前を指定して属性を削除します
この例では、使用していますremoveAttribute()除去するために、 "category"最初から属性を<book>要素。

オブジェクトの属性を削除します
この例では、使用していますremoveAttributeNode()すべてからすべての属性を削除するには<book>要素。

×

ヘッダ


要素ノードを削除します

removeChild()メソッドは、指定されたノードを削除します。

ノードが削除されると、そのすべての子ノードも除去されます。

このコードは、最初に削除されます<book>ロードされたXMLからの要素を:

y = xmlDoc.getElementsByTagName("book")[0];

xmlDoc.documentElement.removeChild(y);
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlは 「ロードされXMLDOCです
  2. 削除する要素ノードであることを、変数yを設定します
  3. 使用して要素ノードを削除するremoveChild()親ノードからメソッドを

マイセルフを削除 - 現在のノードを削除

removeChild()メソッドは、指定されたノードを削除する唯一の方法です。

あなたが削除するノードに移動したとき、のparentNodeプロパティと使用してそのノードを除去することが可能であるremoveChild()メソッドを:

x = xmlDoc.getElementsByTagName("book")[0];

x.parentNode.removeChild(x);
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 削除する要素ノードであることを、変数yを設定します
  3. parentNodeプロパティと使用して要素ノードを削除するremoveChild()メソッドを

テキストノードを削除

removeChild()メソッドは、テキストノードを削除するために使用することができます。

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
x.removeChild(y);
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 最初のtitle要素ノードであることを、変数xを設定します
  3. 削除するにはテキストノードであることを、変数yを設定します
  4. 使用して要素ノードを削除するremoveChild()親ノードからメソッドを

使用することは非常に一般的ではないremoveChild()単にノードからテキストを削除します。 nodeValueプロパティを代わりに使用することができます。 次の段落を参照してください。


テキスト・ノードをクリア

nodeValueプロパティは、テキストノードの値を変更するために使用することができます。

xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 最初のtitle要素の最初の子ノードを取得します。
  3. テキストノードからテキストをクリアするためのnodeValueプロパティを使用します

ループを通過すると、すべてのテキストノード変更<title>要素を: それを自分で試してみてください


名前を指定して属性ノードを削除します

removeAttribute()メソッドは、その名前によって属性ノードを削除します。

例: removeAttribute('category')

このコードは削除され"category" 、最初に属性を<book>要素:

x = xmlDoc.getElementsByTagName("book");
x[0].removeAttribute("category");
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 使用getElementsByTagName()ブックノードを取得します
  3. 削除"category"属性を最初のbook要素ノードを構成します

ループを通過して削除"category"のすべての属性は<book>要素を: それを自分で試してみてください


オブジェクトによって属性ノードを削除します

removeAttributeNode()メソッドは、パラメータとして、ノードオブジェクトを使用して、属性ノードを削除します。

例: removeAttributeNode(x)

このコードは、すべてのすべての属性削除<book>要素を:

x = xmlDoc.getElementsByTagName("book");

for (i = 0; i < x.length; i++) {
    while (x[i].attributes.length > 0) {
        attnode = x[i].attributes[0];
        old_att = x[i].removeAttributeNode(attnode);
    }
}
»それを自分で試してみてください

例を説明しました:

  1. 「仮定のBooks.xmlが 「XMLDOCにロードされます
  2. 使用getElementsByTagName() 、すべての書籍のノードを取得します
  3. 任意の属性がある場合は、各book要素をチェック
  4. 属性はbook要素でありますが、属性を削除します