関数索引
parseHtml() 関数は html テキストをパースして HTMLDocument オブジェクトに変換します。
パースしたい html を文字列で指定します。html 文書全体でもよいですし、または、部分でも構いません。ただし、与える文字列には html として正しい形のものを与える必要があります。多少不整合のあるテキストが渡されても、柔軟にパースしますが、基本的には正しい html を渡すようにしてください。
htmlText という複数行テキストの要素を持つテンプレートがあり、そのテンプレートで作成したページの、この要素の値に下記のような html が記述されている場合を考えます。
<!DOCTYPE html>
<html>
<head>
<title>Hello World!</title>
<link rel="stylesheet" href="default.css" >
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="common/script.js"></script>
</head>
<body>
<h1>こんにちは</h1>
<ul>
<li>これは HTMLDocument オブジェクトの利用例です。</li>
<li>HTMLDocument を使うと HTMLをパースして加工してから利用することができます。</li>
</ul>
</body>
</html>
この html を、テンプレートの展開側で加工するために parseHtml() 関数でHTMLDocument オブジェクトを生成してみましょう。テンプレートの展開には下記のように記述することで htmlText をパースして HTMLDocument オブジェクトを得ることができます。
....
<wr-variable name="doc" value="parseHtml(htmlText)" />
....
得られた HTMLDocument オブジェクトの利用方法については HTMLDocument / HTMLElement / HTMLElements / HTMLTextNode / HTMLComment などのオブジェクトのマニュアルを参照してください。