jquery点击标签+复选框检测哪个?

Joh*_*lia 4 jquery

我正在尝试检查event.target.nodeName,如下所示:

$("input").click(function(e){
    if(e.target.nodeName == "LABEL") {
       alert('label click');
        e.preventDefault();
    } else {
       alert($(this).attr('checked') ? 'checked': 'unchecked');
    }
});
Run Code Online (Sandbox Code Playgroud)

但名称永远不等于标签?我究竟做错了什么?

快速的jsfiddle

und*_*ned 5

您应该选择label()元素.目前,您的点击处理程序的唯一目标是输入元素:

$("label").click(function(e){
  // ...
})
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/j7nSq/