4 个回答

例子代码: http://codepen.io/hj624608494...

问题出现在 this的指向 this永远指向函数执行时的对象.

function choose(){
  alert($(this).data('name'));
  // undefind 因为choose函数的this指向的是window
}

function choose2(){
  $('#J_a').click(function(){
    // 这个点击事件的匿名函数的this 指向的是 $('#J_a') 这个对象
    alert($(this).data('name'));
  })
}
choose2()

绑定事件的时候把this传进去,onclick="choose(this)"

function choose(x){

alert(x.getAttribute("data-name"))

}

新手上路,请多包涵

$(this).attr('data-name');

获取属性 - attr()
jQuery attr() 方法用于获取属性值。

$('#toy').attr('data-name');

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题