在[for =“description”]上点击“无效”

时间:2015-06-26 09:15:07

标签: javascript jquery html event-handling

JSFIDDLE

我正在尝试如果标签上的属性for="description"在点击时应该关注其他元素。

我试过了,但它不起作用。这是否可以获取属性上的单击事件。或者其他可能实现这一目标的可能性是什么?除了添加一个类或id。

$('[for="description"]').on('Click', function() {
    console.log('test');
    alert('test');
});

4 个答案:

答案 0 :(得分:3)

首先,事件名称为click - 请注意小写c。其次,console不是jQuery对象的属性 - 它位于window对象上。试试这个:

$('[for="description"]').on('click', function () {
    console.log('test');
    alert('test');
});
  点击时

应该关注其他元素

如果您提供的inputtextareaselect元素的id属性与for中的label相匹配,则会免费获得此行为{1}}。

Updated fiddle

答案 1 :(得分:1)

你有一个拼写错误:.on("click")没有.on("Click")。另外$('.nicEdit-main').console.log('test');控制台不是jquery对象的属性。

答案 2 :(得分:1)

您需要使用for属性设置阻止标签点击的默认行为:

$(document).ready(function () {
    $('[for="description"]').on('click', function (e) {
        e.preventDefault();
        $('.nicEdit-main').focus();
    });
});

但问题是,为什么首先要设置for属性?请改用任何自定义属性,例如:data-for

答案 3 :(得分:1)

您在点击事件关键字中输入了拼写错误。它应该小写。看看这段代码:

$('[for="description"]').on('click', function () {
    alert('test');
});

否则,您尚未定义类名为nicEdit-main的元素。

Demo