addChildメソッドは使用できません
-
12-12-2019 - |
質問
dynatree プラグインを初めて使用し、ノードを動的に追加しようとしています。私のコードは以下のとおりです。
function DrawTree() {
var names = GetChildName();
var rootNode = $("#ProcessRoleTree").dynatree("getRoot");
var childNode = rootNode.addChild({ title: names[0].Name });
}
実行時にエラーが表示される
Microsoft JScript ランタイム エラー:オブジェクトはこのプロパティまたはメソッドをサポートしていません
何かが足りないのですか?必要なライブラリが含まれていることを確認しました。
<script src="Jquery/jquery/jquery.js" type="text/javascript"></script>
<script src="Jquery/jquery/jquery-ui.custom.js" type="text/javascript"></script>
<script src="Jquery/jquery/jquery.cookie.js" type="text/javascript"></script>
<link href="Jquery/src/skin-vista/ui.dynatree.css" rel="stylesheet" type="text/css" />
<script src="Jquery/src/jquery.dynatree.js" type="text/javascript"></script>
前もって感謝します!
解決
これはあなたの問題ではないかもしれませんが、それはショットの価値があります。他のライブラリとjQueryを使用する場合は、競合するコードと競合することができます。jQueryはjQueryのショートカットとして$記号を使用します。Dynatreeライブラリは、それらの関数のドル記号も使用します。
ツリーを実装するときにこの問題に遭遇し、これが私がそれをどのように修正したかです。あなたが見ることができるように、私はすべての '$'と 'jquery'と置き換えました。
<script type="text/javascript">
jQuery.noConflict();
function DrawTree() {
var names = GetChildName();
jQuery("#ProcessRoleTree").dynatree();
var rootNode = jQuery("#ProcessRoleTree").dynatree("getRoot");
//Try adding a key
var childNode = rootNode.addChild({ title: names[0].Name, key: "001" });
}
</script>
. 他のヒント
呼び出す前に、まずツリーを初期化する必要があります dynatree("getRoot")
, 、例えば最も単純な例では
function DrawTree() {
var names = GetChildName();
$("#ProcessRoleTree").dynatree();
var rootNode = $("#ProcessRoleTree").dynatree("getRoot");
var childNode = rootNode.addChild({ title: names[0].Name });
}
機能するはずです。代わりに、他の多くのオプションをツリー初期化ステップに渡すことができます。見る 文書.
所属していません StackOverflow