php - 通过 ajax 获取另一个页面并显示数据 -> 无法显示正确的格式

标签 php javascript jquery css ajax

我有一个问题:

我有一个显示线程讨论的 Discussions.php 页面。我还有 generateDiscussion.php 页面,它创建了一个包含讨论的树。

当我将generateDiscussion.php 中的代码嵌入Discussions.php 时,它工作正常。通过 embed 我的意思是硬编码与我在 Discussions.php 中一样的东西。工作正常是指我的讨论具有正确的格式,并且 expandgroup 图标按预期工作。

当我通过 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/

看截图 bad

good

最佳答案

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

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

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

关于php - 通过 ajax 获取另一个页面并显示数据 -> 无法显示正确的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16294061/

相关文章:

javascript - 将段落动态保存为 PDF?

Jquery 日期选择器年份范围无法正常工作

php - 无法连接到 "localhost"端口 25 的邮件服务器

javascript - 在 JavaScript 中通过 MySql 验证输入

php - 当前位置是否在表中存储的项目半径内?

javascript - 从 onChange 事件中获取小部件的旧值?

javascript - 如何使用 phantomJS 截屏 div

php - 在生日时向不同客户发送邮件

javascript - 为什么 yui DOM-create 方法有一个名为 'yui3-big-dummy' 的类的处理程序?

javascript - 使用 window.print() 打印输出到不同的打印机