问题描述
我目前正在使用dynaTree jQuery插件来渲染树。
I am currently using dynaTree jQuery plugin to render a tree.
<div id="tree" style="height:100px;">
<ul class="expanded">
<li class="expanded" id="shtml_1" >
<a class="ajaxify" href="jsTree.html" >Root node 1</a>
<ul>
<li id="shtml_2">
<a href="#">Child node 1</a>
<ul>
<li id="a"><a href="#">Child node 1-1</a></li>
<li id="x"><a href="b">Child node 1-2</a></li>
</ul>
</li>
<li id="c"><a href="#">Child node 2</a></li>
</ul>
</li>
<li id="shtml_4">
<a href="#">Root node 2</a>
</li>
</ul>
Javascript -
Javascript -
$('.ajaxify').ajaxify({
target: '#container'
});
$(function(){
$("#tree").dynatree({
title: "Sample Theming",
// Image folder used for data.icon attribute.
imagePath: "skin-custom/",
onSelect: function(node) {
alert ("You selected " + node);
}
});
});
现在我想
- 使用jQuery Ajaxify插件(http://max.jsrhost.com/ajaxify/demo.php),这样当用户点击任何节点时,就会调用ajax调用并将结果加载到div中。
或
- 绑定锚标签使用jquery以便我可以onclick ajax请求。
现在每当我使用dynaTree时它会覆盖默认行为并阻止锚标记来自点击即可。关于如何做到这一点的任何想法?
Now whenever i use dynaTree it overrides the default behavior and prevents the anchor tag from being click able. Any thoughts on how this can be done?
推荐答案
Dynatree默认删除< a>
标签,因此可以更容易地实现onActivate处理程序:
Dynatree will by default remove the <a>
tags, so it is possbly easier to implement the onActivate handler:
onActivate: function(node) {
if( node.data.href ){
// use href and target attributes:
window.location.href = node.data.href;
// window.open(node.data.href, node.data.target);
// $("#div").load(node.data.href);
}
}
从版本1.1.2开始,Dynatree将使用< a> 标记的code> href 和目标
属性:
Starting with release 1.1.2, Dynatree will use href
and target
attributes directly from the <a>
tag:
<li id="x"><a href="b">Child node 1-2</a></li>
在旧版本中你必须像这样设置href:
In older versions you have to set href like so:
<li id="x" data="href: 'b'"><a href="b">Child node 1-2</a></li>
这篇关于如何在dynaTree jQuery插件中点击超链接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!