Jquery li属性返回未定义的值

Jquery li属性返回未定义的值,jquery,html,twitter-bootstrap,Jquery,Html,Twitter Bootstrap,我在引导页面的一侧有一个nav列表,我想在每次单击每个项目时获取其自定义属性的值。我尝试了许多不同的方法,但我似乎不明白为什么属性总是返回未定义 以下是一些示例HTML: <ul id="list" class="nav nav-list"> <li class=""><a href="#" myval="firstValue">Item 1</a></li> <li class="ac

我在引导页面的一侧有一个nav列表,我想在每次单击每个项目时获取其自定义属性的值。我尝试了许多不同的方法,但我似乎不明白为什么属性总是返回未定义

以下是一些示例HTML:

<ul id="list" class="nav nav-list">              
    <li class=""><a href="#" myval="firstValue">Item 1</a></li>
    <li class="active"><a href="#" myval="secondValue">Item 2</a></li>
</ul>

您的自定义属性不在LI上。您必须从其子级获取属性

var currentVal= $(this).children('a').attr('myval');

您的自定义属性不在LI上。您必须从其子级获取属性

var currentVal= $(this).children('a').attr('myval');

不要使用
myval
,而是使用
data myval

<a href="#" data-myval="firstValue">

$("#list").on('click', 'li:has(a[href^="#"])', function () {
    alert($(this).children('a[href^="#"]').data('myval'));
});

$(“#列表”)。在('click','li:has(a[href^=“#“])上,函数(){
警报($(this).children('a[href^=“#”]”)和.data('myval');
});

还请注意,单击的目标是
li
:has
没有选择任何内容。通过删除
:has
也可以绑定到
a

不要使用
myval
,而是
数据myval

<a href="#" data-myval="firstValue">

$("#list").on('click', 'li:has(a[href^="#"])', function () {
    alert($(this).children('a[href^="#"]').data('myval'));
});

$(“#列表”)。在('click','li:has(a[href^=“#“])上,函数(){
警报($(this).children('a[href^=“#”]”)和.data('myval');
});

还请注意,单击的目标是
li
:has
没有选择任何内容。通过删除
:has
也可以绑定到
a

啊,你说得对!成功了!非常感谢:)如果我的代码是
  • ,我的代码会工作吗?啊,你说得对!成功了!非常感谢:)如果我的代码是
  • ,它会工作吗?