0
page1.phpがpage2.phpからTreeviewを取得するためにAjaxを呼び出しています(ここでAjaxを使用するのは、Treeviewがdbに基づいて変更されたためです)。 TreeviewはここのJqueryプラグインです。したがって、Treeview用のJqueryライブラリがすべてpage1.phpにインポートされている必要があります。JaveryプラグインがAjaxで動作しない
ただし、Jqueryライブラリはトリガされません。 console.log($("#browser").treeview());
は空のJquery()を表示しています。
誰かが私を助けることができますか?どうもありがとう!私はどこでもあなたが提供するマークアップで#browser
要素が表示されていない
--Ajax 1ページで一部---
<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>
#browser要素はどこですか?私はあなたのマークアップでそれを見ることはありません。 – Redtopia
#browser要素がpage2.phpにあります – Acubi
あなたの例は不完全なので、何が起こっているのかは分かりません。私はshowTreeview()関数を呼び出すコードがないので、なぜこの例でさえわからないのでしょうか。 ShankarSangoliが述べたように、#browserがpage2.phpにある場合、そのページからツリービューをインスタンス化する必要があります。 $(document).ready();を使用できます。そのページの中でそれを行う。 – Redtopia