这是我的HTML,我试图抓住'链接'的价值
<li class="nav-parent nav-expanded">
<a>
<i class="licon-layers" aria-hidden="true"></i>
<span>Virtual Servers</span>
</a>
<ul id="vms" class="nav nav-children" style="">
<li value="0">
<a link="i-2-20-VM">puppet-srv2</a>
</li>
<li value="0">
<a link="i-2-18-VM">puppet-srv1</a>
</li>
<li value="0">
<a link="i-2-24-VM">testing</a>
</li>
</ul>
这是我到目前为止所尝试过的,但它无效:
$("#vms").on("click", "li", function() {
var href = $(this).children('a').find('link').attr();
console.log(href);
});
我不确定我做错了什么,非常感谢你的帮助
答案 0 :(得分:2)
您尝试使用.find('link')
代码查找属性链接。由于子元素已经建立,因此只需使用.attr()
捕获它。而不是那样,请尝试以下代码:
更改此内容:
var href = $(this).children('a').find('link').attr();
进入
var href = $(this).children('a').attr('link');
或者您也可以使用以下代码:
$("#vms").on("click", "li", function() {
var href = $(this).find('a').attr('link');
console.log(href);
});
我读了你的评论声音:
我正在使用它来保存VM名称的值
如果是这样,您可以为用户定义的属性添加数据属性,如下所示:
<a data-link="i-2-20-VM">puppet-srv2</a>
然后要获得它的价值,只需使用下面的.data()
函数:
var href = $(this).find('a').data('link');