我有一个问题:

我有Discussions.php页面,其中显示了主题讨论。我也有generateDiscussion.php页面,该页面创建了一个带有讨论的树。

当我将embedd中的代码从generateDiscussion.php转换为Discussions.php时,它可以正常工作。我所说的embed是指对与Discussions.php中相同的内容进行硬编码。所谓工作正常,是指我的讨论具有正确的格式,并且expandgroup图标可以正常工作。

当Iam通过AJAX获取Discussions.php并将AJAX的响应添加到generateDiscussion.php时;它不能按预期工作。

我还尝试先在Discussions.php中生成树,然后使用新树对其进行更新。结果,第一次加载(在页面内部)可以正常工作,但是AJAX调用将其弄乱了。

<ul id="browser" class="filetree">
  <a href="#!/pageHistory">Please select a case first</a>
</ul>


                <script>
                function getResolutionBoard(caseId) {
                    idcase=caseId;
                    jQuery(function($) {
                        $.ajax( {
                            url : "generateDiscussion.php?caseid="+caseId+"ts=" +new Date().getTime(),
                            type : "GET",
                            success : function(data) {
                                document.getElementById('browser').innerHTML = data;
                            }
                        });
                    });
                }
                </script>


我合并了此脚本:http://jquery.bassistance.de/treeview/demo/

看截图

最佳答案

如何在ajax加载中初始化javascript?

在DOM中加载html代码后,您需要在成功回调中调用插件的初始化方法($('#browser').treeview())。

 ... ajax({ ...
         success : function(data) {
             document.getElementById('browser').innerHTML = data;
             $('#browser').treeview(/*your options*/);
         }
     });

07-24 19:15
查看更多