0

DOM では、 Document オブジェクトにメソッドgetElementsByTagName()があることを知っています。

この操作が特定のノードで定義されていないのはなぜですか? Node オブジェクトがあり、その Node の特定の子を名前で検索したいとします。その名前の子が見つかるまで、すべての子をトラバースする独自のメソッドを本当に実装する必要がありますか? (私は XPath を使用していません。) 単純なタスクの場合、かなりの作業のように思えます。ありがとう

4

2 に答える 2

0

コードをテストしたところ、期待通りの結果が得られました。だから私はあなたが何か間違ったことをしていると思います。

例: http://tinkerbin.com/uAgGGIM4 (実行をクリックしてコードを実行します)

于 2012-01-19T19:08:50.060 に答える
0

JAVAについて話していると思います。Javascript の場合は、この回答を忘れてください (それに応じて質問にタグを付けてください)。その場合、getElementsByTagName は「Element」オブジェクトでのみ機能し、「Node」オブジェクトでは機能しません (すべての要素はノードですが、すべてのノードは要素ではありません)。

http://docs.oracle.com/javase/6/docs/api/org/w3c/dom/Element.html

オブジェクトが要素であることが確実な場合は、メソッドを呼び出す直前にキャストできます

Element eElement = (Element) nNode;

前にhttp://docs.oracle.com/javase/6/docs/api/java/lang/Class.html#isAssignableFrom%28java.lang.Class%29が必要な場合があります。

于 2012-01-19T19:09:57.817 に答える