javascript - jquery选择子元素的值

标签 javascript jquery

这是我的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);
});

我不确定我做错了什么,非常感谢您的帮助

最佳答案

您尝试使用 .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);
});

我读到了你的评论:

I'm using that just to hold value of VM name

如果是这样,您可以为用户定义的属性添加数据属性,如下所示:

<a data-link="i-2-20-VM">puppet-srv2</a>

然后要获取它的值,只需使用 .data()函数如下:

var href = $(this).find('a').data('link');

关于javascript - jquery选择子元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29886376/

相关文章:

javascript - JavaScript 中的词法作用域

javascript - HTML 文本输入只允许数字输入

javascript window.open url + json var

jquery - 如何在 jQuery Mobile 中正确使用 $ ('document' ).bind ('pageinit' ) ?

JavaScript 搜索功能

javascript - 如何将 fadeIn 添加到我的 show_hide() 函数中?

javascript - V8 中的 fatal error

javascript - ZF 1.9 从前端 html 重定向

javascript - 仅使用选定的 xml 数据填充 jqgrid

javascript - jquery 计算给定动态填充容器的高度/宽度