2011-12-16 33 views
0

親ノードと子ノードがあります。 親が> = 1の子ノードを含んでいる場合は、 "helllooo"で確認してください。そうでない場合、親ノードに子ノードがない場合、 "hi"で確認してください。親にChildNodesが含まれているかどうかをチェック

しかし、時には "hi"と他の時 "helllooo"と表示されます。ここで

は、コードは次のとおりです。

function childnode() { 
    var treeViewData = window["<%=items.ClientID%>" + "_Data"]; 

    //if (treeViewData.selectedNodeID.value != ""){ 
    var selectedNode = document.getElementById(treeViewData.selectedNodeID.value); 
    if (selectedNode.childNodes.count >= 0) { 
    return confirm("heloo"); 
    } 
    else { 
    return confirm("hi"); 
    } 

    return false; // don't send form 
} 
+0

Shift + Tabてください、あなたのテキストで –

+0

、あなたは=>カウントがある場合、それは「heloo」で応答しなければならないと言います1、あなたのコードは> = 0です。それはタイプミスですか? –

+0

あなたはどういう意味が分かりませんか?何について? – Ish

答えて

0

あなたはlength財産ではなく、countプロパティをしたいです。また、私はあなたがこれはテキストノードを含む任意の子ノードが存在するかどうかを教えてくれます>= 0

var selectedNode = document.getElementById(treeViewData.selectedNodeID.value); 
if (selectedNode.childNodes.length > 0) { 
    return confirm("heloo"); 
} 

の代わりに、> 0を意味だと思います。要素である子ノードがあるかどうかを知りたければ、nodeTypeプロパティを見てください。

var selectedNode = document.getElementById(treeViewData.selectedNodeID.value); 
var children = selectedNode.childNodes; 
var anyChildElements = false; 

for (var i = 0; i < children.length; i++) 
    if (children[i].nodeType === 1) { 
     anyChildElements = true; 
     break; 
    } 

if (anyChildElements) { 
    return confirm("heloo"); 
} 
+0

全く同じコードをペーストしましたが、何もしません。ボタンをクリックすると、確認のボックスが表示されません – Ish

+0

デバッグしましたか?エラーメッセージを確認しましたか? –

+0

イベントはまったく発生していません – Ish

1

あなたがノード要素の違いに実行されている可能性が高いようです。 ノードは、例えば、テキストノードまたは空白ノード。おそらく要素が必要です。

またNodeListcountとしてそのようなプロパティが存在しない問題があります。あなたはおそらくlengthを探しています。

selectedNode.children.length代わりのselectedNode.childNodes.countを試してみてください。

(また、あなたの変数selectedNodeの名前は間違っている:要素ではなく、ノードを返しdocument.getElementById

+0

selectedNode.childElements.lengthは機能しません。イベントはまったく解雇されません。 – Ish

+0

申し訳ありませんが、私は入力しました。 'children.length'です。回答が更新されました。 – Domenic

+0

両方のノードで "hi"と表示されます。最初のノードは、親ノードと子ノードで構成されるsecondeノードのみで構成されます。 – Ish

関連する問題