Jquery插件不适用于Ajax

时间:2012-03-28 14:46:19

标签: ajax jquery-ui jquery jquery-plugins

page1.php正在调用Ajax从page2.php获取Treeview(之所以在这里使用Ajax,是因为Treeview基于db而改变了)。 Treeview是一个Jquery插件。因此,所有需要Treeview的Jquery库都已导入page1.php。

但是,Jquery库未触发。 console.log($("#browser").treeview());显示空的Jquery()。

有没有人可以帮助我?非常感谢!

- 第1页的Ajax部分---

<head>

<script src="jquery.treeview.js" type="text/javascript"></script>

<script type="text/javascript">
        $(document).ready(function(){


            $("#browser").treeview();

            console.log($("#browser").treeview());  
            //show Jquery()-means the jquery.treeview didn't called


        });

</script>

<script type="text/javascript">

function showTreeview()
            {

                if (window.XMLHttpRequest)
                {// code for IE7+, Firefox, Chrome, Opera, Safari
                    xmlhttp=new XMLHttpRequest();
                }
                else
                {// code for IE6, IE5
                    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
                xmlhttp.onreadystatechange=function()
                {
                    if (xmlhttp.readyState==4 && xmlhttp.status==200)
                    {
                       document.getElementById("treemenu").innerHTML=xmlhttp.responseText;
                    }
                }

                xmlhttp.open("POST","page2.php",true);
                xmlhttp.send();
            }

</script>
</head>

<body>
<div id="treemenu">
</div>
</body>

1 个答案:

答案 0 :(得分:1)

我在您提供的标记中的任何位置都没有看到#browser元素。如果它是page2.php的一部分,那么一旦在页面上加载内容,您应该执行treeview插件。

当jQuery给出空集时,意味着它没有找到与选择器匹配的任何元素。