私はこのようになりますtest.htmlというファイルがあります。外部HTMLファイルでgetElementsByClassNameを使用できますか?
FOO
BAR
:私が望む結果を得るには
<script>
var x = document.getElementsByClassName("outside");
for (var i=0;i<x.length;i++)
document.write(x[i].getElementsByClassName("inside")[0].childNodes[0].nodeValue);
</script>
:私は単純に次のように解析することができます
<!DOCTYPE html>
<html>
<body>
<div class="outside">
<div class="inside">
FOO
</div>
</div>
<div class="outside">
<div class="inside">
BAR
</div>
</div>
</body>
</html>
をしかし、別のHTMLファイルでtest.htmlの内容を解析したいと思います。私はこのようにXMLHttpRequestを使用して試してみた:
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
}
xmlhttp.open("GET","test.html",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByClassName("outside");
for (var i=0;i<x.length;i++)
document.write(x[i].getElementsByClassName("inside")[0].childNodes[0].nodeValue);
しかし、それは私に次のエラーを与える:
TypeError: null is not an object (evaluating 'xmlDoc.getElementsByClassName')
アクセスに問題ではありませんので、私のローカルWebサーバー上のすべてのファイルを使用します。私はこれが確かに最も現代的な構文解析方法ではないことを知っていますが、私はホビープロジェクトのためにローカルで使うつもりです。しかし、jQueryを使ってこれをどのように解決するかについてのご意見があれば、私はどんなアイディアにも公開しています。
まあ.... – epascarello
私はHTMLがXMLHttpRequestをでサポートされるようにすべきで何を読んでから。しかし確かに間違っている可能性があります。 – yayheartbeat
はい、HTMLはXMLではありません – epascarello