Javascript Can';t使用jquery绑定按钮上的单击事件

Javascript Can';t使用jquery绑定按钮上的单击事件,javascript,jquery,Javascript,Jquery,我是js新手 我有一个这样的结构: <ul class='selectable-list'> <li><a data-id="5" data-type="Content">Test</a></li> <li><a data-id="3" data-type="Content">Test</a></li> </ul> 结果是,这是一个文本,因此我无法获取数据属性。。。为什么

我是js新手

我有一个这样的结构:

<ul class='selectable-list'>
 <li><a data-id="5" data-type="Content">Test</a></li>
 <li><a data-id="3" data-type="Content">Test</a></li>
</ul>
结果是,
这是一个文本,因此我无法获取数据属性。。。为什么?

编辑:


我不确定你所说的文字是从哪里来的。
this
将是您单击的DOM节点。如果将其包装在
$()
中,则应该能够读取数据属性

$selectableList=$('.selectableList a');
$selectableList。单击(函数(){
var-anchor=$(这个);
log(anchor.data(“id”)、anchor.data(“type”);
});

  • 试验
  • 试验

.attr是jQuery提供的一个函数,这意味着您只能将其应用于jQuery对象

在这里的代码片段中,您试图在属于本机javascript且没有与之关联的.attr方法的上使用它。此对象将是您单击的DOM节点对象

您需要做什么来包装您的this$或jQuery名称空间,比如

$(this).attr("data-type")
你应该可以走了

希望这能有所帮助


快乐学习:)

不,
这不是文本,你错了@adeneo我不知道为什么但不是DOM节点。。。
        bindEvents : function bindEvents() {
            $selectableList.click(function(){ 
                console.log(this.attr("data-type"))
                script.addItem(this); 
            });
        }

Uncaught TypeError: this.attr is not a function
$(this).attr("data-type")