我在sample.html文件中有这样的HTML代码:
<ul id='topics' class='filetree'>
<li><span class='folder'><a href='?Lang=en&TopicID=#'>Topics</a></span>
<ul>
<li><span class='folder'><a href='?Lang=en&TopicID=1'>Topic 1</a></span>
<ul>
<li><span class='file'><a href='?Lang=en&TopicID=1.1'>Topic 1.1</a></span></li>
<li><span class='file'><a href='?Lang=en&TopicID=1.2'>Topic 1.2</a></span></li>
<li><span class='file'><a href='?Lang=en&TopicID=1.3'>Topic 1.3</a></span></li>
</ul>
</li>
使用 JQuery.load 我加载html文件以生成Treeview
<div id="LtrLeftContent">
<script language="javascript" type="text/javascript">
$('#LtrLeftContent').load('sample.html', function () {
$("#topics").treeview();
$("li span").click(function () {
alert($(this).text()); // Get the current node text
});
});
</script>
</div>
点击任何节点后,如下节点
<li><span class='folder'><a href='?Lang=en&TopicID=1'>Topic 1</a></span></li>
回发后&amp;树视图无法维护所选节点的状态。
我尝试下面的代码,但没有成功
流程1:
$("li span").bind('click', function() {
//clear all clicked items if any
$('.selected').removeClass('select');
//set this clicked
$(this).addClass('select');
});
* 流程2:*
$("li span").click(function() {
//clear all clicked items if any
$('.selected').removeClass('selected');
//set this clicked
$(this).addClass('selected');
});
问题1:如何在回发后维护所选节点的状态。突出显示该特定节点。
的用途是什么?
persist: "cookie",
cookieId: "navigationtree"
为什么它无法维持状态?
解决了问题
$("#topics").treeview({
persist: "location"
});
非常有用的链接,精心描述
注意:但不知道为什么使用波纹管代码却无法正常工作
persist: "cookie",
cookieId: "navigationtree"
答案 0 :(得分:1)
回发后,一切都消失了。您需要将所选节点的ID存储在cookie中。
但是,您的节点没有ID,因此您可以将文本或href存储在cookie中,然后在页面加载时查找cookie,如果找到,则使用jQuery查找节点并选择它。