検索
ホームページバックエンド開発XML/RSS チュートリアルXML学習(2) XML文書に対するDOM操作を詳しく解説

DOM の観点から見ると、HTML は XML のようなツリー構造のドキュメントです。各ノードは、さまざまなタイプの Node オブジェクトとして扱われます。各 Node オブジェクトには独自のプロパティとメソッドがあり、これらを使用してドキュメント ツリー全体を走査できます。 DOM は、ノードのタイプを表す nodeType を定義します

Node.TEXT_NODE3テキストノード8注釈付きテキスト11ドキュメントスニペット

インターフェース

nodeType 定数

nodeType 値

備考

要素

Node.ELEMENT_NODE

1

要素ノード

テキスト

ドキュメント

ノード

コメント

Node.COMMENT_NODE

DocumentFragment

Node.DOCUMENT_FRAGMENT_NODE

属性

Node.ATTRIBUTE_NODE

2

ノード属性

DOM ツリーのルート ノードは Document オブジェクトであり、ドキュメントがドキュメント全体を指す場合もあります。

Document で定義されているメソッドのほとんどは生成メソッドであり、主にドキュメントに挿入できるさまざまなタイプのノードを作成するために使用されます。一般的に使用される Document メソッドは次のとおりです:

メソッド

description

createAttribute()

指定された名前で新しい Attr ノードを作成します。

createComment()

指定された文字列を使用して新しい Comment ノードを作成します。

createElement()

指定されたタグ名で新しい要素ノードを作成します。

createTextNode()

指定されたテキストを含む新しい TextNode ノードを作成します。

getElementById()

ドキュメント内の指定された id 属性を持つ要素ノードを返します。

getElementsByTagName()

ドキュメント内の指定されたタグ名を持つすべての要素ノードを返します。

一般的に使用される要素メソッド:

Node オブジェクトの一般的に使用される属性:

Method

Description

getAttribute()

指定された属性の値を文字列形式で返します。

getAttributeNode()

指定された属性の値を Attr ノードの形式で返します。

getElementsByTabName()

指定されたタグ名を持つすべての要素ノードの子孫ノードをドキュメント内に出現する順序で含むノード配列を返します。

hasAttribute()

要素に指定された名前の属性がある場合に true を返します。

removeAttribute()

指定された属性を要素から削除します。

removeAttributeNode()

指定された Attr ノードを要素の属性リストから削除します。

setAttribute()

指定された属性を指定された文字列値に設定するか、属性が存在しない場合は新しい属性を追加します。

setAttributeNode()

指定された Attr ノードを要素の属性リストに追加します。

attributeschildNodeslastChild

ノードがElement の場合、その要素の属性が NamedNodeMap の形式で返されます。

は、現在のノードの子ノードをNode[]の形式で格納します。子ノードがない場合は、空の配列が返されます。

firstChild

現在のノードの最初の子ノードを Node の形式で返します。子ノードがない場合は null

現在のノードの最後の子ノードを Node の形式で返します。子ノードがない場合、これは null になります。

次の兄弟

現在のノードの兄弟である次のノードを Node の形式で返します。そのようなノードが存在しない場合は、null が返されます。

nodeName

ノードの名前。ElementノードはElementのタグ名を表します。

nodeType

はノードのタイプを表します。

parentNode

現在のノードの親ノードを Node の形式で返します。親ノードがない場合、これは null になります。

previousSibling

現在のノードの直前の兄弟ノードをNodeの形式で返します。そのようなノードが存在しない場合は、null が返されます。

Node オブジェクトの一般的なメソッド:

Method

Description

appendChild()

の childNodes[] にノードを追加することで、現在のノード グループ、ドキュメント ツリーにノードを追加します。

cloneNode()

現在のノードをコピーするか、現在のノードとそのすべての子孫ノードをコピーします。

hasChildNodes()

現在のノードに子ノードがある場合は true を返します。

insertBefore()

ノードをドキュメントツリーに挿入し、現在のノードの指定された子ノードの前に配置します。ノードがすでに存在する場合は、それを削除し、その場所に挿入します。

removeChild()

指定された子ノードをドキュメントツリーから削除して返します。

replaceChild()

指定された子ノードをドキュメントツリーから削除して返し、別のノードに置き換えます。


要素の値を取得します

以下のコードは、最初の

要素のテキスト値を取得します: <pre class='brush:php;toolbar:false;'>x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];txt=x.nodeValue; //其实应该先判断节点是否存在</pre><p>結果: txt = "Harry Potter" </p> <h2 id="属性">属性 </h2> <p>以下 このコードは、最初の </p> <title> 要素の "<a href="http://www.php.cn/java/java-ymp-Lang.html" target="_blank">lang</a>" 属性のテキスト値を取得します: <pre class='brush:php;toolbar:false;'>txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");</pre><p> 結果: txt = "en" </p> <h2 id="要素の値を変更します">要素の値を変更します </h2> <p> 以下のコード最初の </p> <title><pre class='brush:php;toolbar:false;'>x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];x.nodeValue="Easy Cooking";</pre><h2 id="属性の値を変更します">属性の値を変更します</h2> setAttribute() メソッドを使用して、既存の属性の値を変更したり、新しい属性を作成したりできます。 <p></p>次のコードは、「edition」という新しい属性 (値が「first」) を各 <book> 要素に追加します。 <p><pre class='brush:php;toolbar:false;'>x=xmlDoc.getElementsByTagName("book");for(i=0;i<x.length;i++) { x[i].setAttribute("edition","first"); }</pre></p>要素の作成<h2></h2> createElement() メソッドは、新しい要素ノードを作成します。 <p></p>createTextNode() メソッドは新しいテキスト ノードを作成します。 <p></p>appendChild() メソッドは、子ノードをノードに (最後の子ノードの後に​​) 追加します。 <p></p>テキストコンテンツを含む新しい要素を作成する必要がある場合は、要素ノードとテキストノードを同時に作成する必要があります。 <p></p>次のコードは、要素 (<edition>) を作成し、それを最初の <book> 要素に追加します。値「First」を持つテキスト ノードを作成します <p></p> <h3></h3> このテキスト ノードを <edition> 要素に追加します <ol class=" list-paddingleft-2"> <li> <p></p> <edition> 要素を最初の <book> 要素に追加します </book></edition> </li> <li> <p></p> </li>removeChild() メソッドは、指定されたノード (または要素) を削除します。 <li> <p>次のコード スニペットは、最初の <book> 要素の最初のノードを削除します。 </book></p><pre class='brush:php;toolbar:false;'>newel=xmlDoc.createElement("edition");</pre></li>サンプル コード<li><pre class='brush:php;toolbar:false;'>newtext=xmlDoc.createTextNode("First");</pre><p></p> </li> </ol></edition></book></edition></book>

以上がXML学習(2) XML文書に対するDOM操作を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
RSSドキュメント:Webシンジケーションの基礎RSSドキュメント:Webシンジケーションの基礎Apr 18, 2025 am 12:04 AM

RSSドキュメントは、頻繁に更新されるコンテンツを公開および購読するために使用されるXMLベースの構造化されたファイルです。その主な機能には、1)自動化されたコンテンツの更新、2)コンテンツの集約、3)ブラウジング効率の改善。 RSSFeedを通じて、ユーザーはタイムリーにさまざまなソースから最新情報を購読および取得できます。

RSSのデコード:コンテンツフィードのXML構造RSSのデコード:コンテンツフィードのXML構造Apr 17, 2025 am 12:09 AM

RSSのXML構造には、1。XML宣言とRSSバージョン、2。チャネル(チャネル)、3。アイテムが含まれます。これらの部品はRSSファイルの基礎を形成し、XMLデータを解析することにより、ユーザーがコンテンツ情報を取得および処理できるようにします。

XMLベースのRSSフィードを解析して利用する方法XMLベースのRSSフィードを解析して利用する方法Apr 16, 2025 am 12:05 AM

rssfeedsusexmltosyndicatecontent; parsingtheminvolvesloadingxml、navigating structure、and extractingdata.applicationsincludebuildingnewsaggretationsandtrackingpodcastepisodes。

RSSドキュメント:お気に入りのコンテンツをどのように配信するかRSSドキュメント:お気に入りのコンテンツをどのように配信するかApr 15, 2025 am 12:01 AM

RSSドキュメントは、XMLファイルを介してコンテンツの更新を公開することで機能し、ユーザーはRSSリーダーを介して通知をサブスクライブして受信します。 1。コンテンツパブリッシャーは、RSSドキュメントを作成および更新します。 2。RSSリーダーは、XMLファイルに定期的にアクセスして解析します。 3.ユーザーは、更新されたコンテンツを閲覧および読み取ります。使用例:TechCrunchのRSSフィードを購読するには、RSSリーダーへのリンクをコピーするだけです。

XMLを使用したフィードの構築:RSSの実践ガイドXMLを使用したフィードの構築:RSSの実践ガイドApr 14, 2025 am 12:17 AM

XMLを使用してRSSFeedを構築する手順は次のとおりです。1。ルート要素を作成してバージョンを設定します。 2.チャネル要素とその基本情報を追加します。 3.タイトル、リンク、説明を含むエントリ要素を追加します。 4. XML構造を文字列に変換して出力します。これらの手順を使用すると、有効なRSSFeedをゼロから作成し、リリース日や著者情報などの追加要素を追加することにより、機能を強化できます。

RSSドキュメントの作成:ステップバイステップのチュートリアルRSSドキュメントの作成:ステップバイステップのチュートリアルApr 13, 2025 am 12:10 AM

RSSドキュメントを作成する手順は次のとおりです。1。要素を含むルート要素を使用して、XML形式で書き込みます。 2。チャネル情報を説明する要素など。 3.要素を追加します。それぞれがコンテンツエントリを表します。 4.オプションで、コンテンツを濃縮するための要素を追加します。 5. XML形式が正しいことを確認し、オンラインツールを使用してパフォーマンスを最適化し、コンテンツを更新します。

RSSにおけるXMLの役割:シンジケートコンテンツの基礎RSSにおけるXMLの役割:シンジケートコンテンツの基礎Apr 12, 2025 am 12:17 AM

RSSにおけるXMLの中心的な役割は、標準化された柔軟なデータ形式を提供することです。 1. XMLの構造とマークアップ言語の特性により、データ交換とストレージに適しています。 2。RSSはXMLを使用して標準化された形式を作成して、コンテンツの共有を容易にします。 3. RSSでのXMLの適用には、タイトルやリリース日などのフィードコンテンツを定義する要素が含まれます。 4.利点には標準化とスケーラビリティが含まれ、課題にはドキュメントの冗長および厳密な構文要件が含まれます。 5.ベストプラクティスには、XMLの有効性の検証、シンプルな状態を維持し、CDATAの使用、定期的に更新されます。

XMLから読み取り可能なコンテンツまで:RSSフィードを分類しますXMLから読み取り可能なコンテンツまで:RSSフィードを分類しますApr 11, 2025 am 12:03 AM

rssfeedsarexmldocumentsusedforcontentaggregationanddistribution.totransformthemintoreadablecontent:1)parsethexmlusinglibrarieslibrarieslibrarieslibrarieslibrarieslibrarieslibrarieslibraries.2)heandlederentrssiversions andpotentialparsingerrors.3)変換された拡張型拡張型のfienderidederidrederidederidederidedionderiondiontiontiontiontiontiontiontiontional

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター