我想讓JsTree在我的MVC應用程序中獲取文件夾視圖。如果我在頁面視圖中使用現有的靜態html ul列表,一切工作正常。但我需要動態獲取UL列表,用於JsTree的文檔中描述的,所以我想在Ajax調用:MVC中的JsTree jQuery插件中的Ajax調用
<script type="text/javascript">
var url;
$(document).ready(function() {
$("a").click(function() {
url = "?url=" + $(this).attr("rel");
alert(encodeURI(url));
});
});
$(function() {
$("#demo2").jstree({
"html_data": {
"ajax": {
"url": "/Home/Directories/"
}
},
"ui": {
"select_limit": 2,
"select_multiple_modifier": "alt",
"selected_parent_close": "select_parent",
"initially_select": ["phtml_2"]
},
"themes": {
"theme": "classic",
"dots": true,
"icons": true
},
"plugins": ["themes", "html_data", "ui"]
});
});
</script>
正如你所看到的,我想有設置所有的點擊事件「一」這個列表的元素。同樣,如果ul列表直接寫入div id =「demo2」,這可以正常工作。但是當我嘗試動態獲取列表時,這些動態創建的元素上的點擊事件不起作用。什麼都沒發生。我已經檢查了html的結果,就我所見,一切都很好。就好像沒有設置點擊事件,因爲點擊事件設置時,動態a元素不存在,可以這樣嗎?如果是這樣,我能做些什麼呢?我需要能夠在動態創建的元素上觸發事件...我已經查閱了JsTree文檔,但它非常簡單,基本上只是列出事件等,而不顯示如何使用它們。我猜如果我可以有一個回調,以便只有在創建了樹才能使其工作的情況下設置click事件,但我無法弄清楚如何爲此編寫回調。 (我對jquery非常陌生,並且對這個腳本感到很頭痛,但我需要它,所以我一直在努力學習)。