Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript DOM元素在放入Telerik窗口时消失_Javascript_Dom_Tree_Dialog_Telerik - Fatal编程技术网

Javascript DOM元素在放入Telerik窗口时消失

Javascript DOM元素在放入Telerik窗口时消失,javascript,dom,tree,dialog,telerik,Javascript,Dom,Tree,Dialog,Telerik,我有一个自定义javascript树,需要使用Telerik Rad在网页中显示。我的树的根位于名为fptree的元素。我可以在对话框中弹出树,如下所示: var rwm = parent.GetRadWindowManager(); var w = rwm.open(null, null, document.getElementById('fptree'), 400, 500); 这将根据需要在模式对话框窗口中显示我的树。但是,我再也找不到树中的任何条目,包括$(“#fptree”)。树通过

我有一个自定义javascript树,需要使用Telerik Rad在网页中显示。我的树的根位于名为
fptree
的元素。我可以在对话框中弹出树,如下所示:

var rwm = parent.GetRadWindowManager();
var w = rwm.open(null, null, document.getElementById('fptree'), 400, 500);
这将根据需要在模式对话框窗口中显示我的树。但是,我再也找不到树中的任何条目,包括
$(“#fptree”)
。树通过按id查找节点来扩展节点,但回调失败,因为找不到任何节点或父节点。节点在对话框中正确显示,因此它们必须在某个位置可用

我曾尝试从中使用
dump\u dom
,但fptree元素没有显示在转储中。(如果我在打开RadWindow对话框之前转储DOM,它们确实会显示。)


有人能解释一下我如何访问RadWindow对话框中的DOM元素吗?(所有这些都在jquery ui对话框中工作,但我需要与基于Telerik的页面集成以获得一致的样式。)

RadWindow移动DOM中的内容-它生成的弹出窗口(通过JS)是
元素的第一个子元素。也许这与某些代码无法找到它们有关

我发现的另一件事是: 表示动态生成的内容模板无法按预期工作。因此,您应该尝试在标记中声明一个RadWindow及其ContentTemplate并打开它。比如:

        <telerik:RadWindow ID="RadWindow1" runat="server">
            <ContentTemplate>
            </ContentTemplate>
        </telerik:RadWindow>
        <div id="myTree">this is my tree</div>
        <asp:Button ID="Button1" Text="open dialog and put nodes in it" OnClientClick="openWnd(); return false;" runat="server" />
        <script>
            function openWnd() {
                var wnd = $find("<%=RadWindow1.ClientID%>");
                wnd.show();
                var templateElem = wnd.get_contentElement();
                //this happens after show()
                templateElem.appendChild(document.getElementById("myTree"));
            }
        </script>

这是我的树
函数openWnd(){
var wnd=$find(“”);
wnd.show();
var templateElem=wnd.get_contentElement();
//这发生在show()之后
templateElem.appendChild(document.getElementById(“myTree”);
}