私はウェブページ上にツリービューと削除ボタンを持っています。ツリービューは、親ノードと子ノードとともにロードされます。子ノードを持つ親ノードを選択した後で削除をクリックすると、それに応じて以下のメッセージが確認ボックスに表示されます。Haschildnodes()が機能しません
子ノードを持たない親ノードを選択すると、次のメッセージが表示されます: ""要素には少なくとも1つの子があります "。 "この要素には、子「
コード:。。
function check() {
var treeViewData = window["<%=nav_tree_items.ClientID%>" + "_Data"];
var selectedNode = document.getElementById(treeViewData.selectedNodeID.value);
var hasChilds = selectedNode.hasChildNodes();
if (hasChilds) {
alert("The element has at least one child.");
} else {
alert("The element has no children.");
}
が助けてください ありがとうございず、申し訳ありませんが、私が起こしたことがあるならば、私の説明で混乱が
要素に任意の型*の子ノード*がないことを確認します。 HTMLソースに改行文字がないと、DOMノードにテキストノードが含まれる可能性があることに注意してください。 – Pointy
私は各子の 'nodeType'を調べるでしょう。おそらくあなたが期待していなかったものがあります:http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-1950641247 – canon
どのようなノードタイプがわかりますか?それをチェックする方法はありますか? – Ish