0

data-titleカスタム データ属性 ( ) が設定されている要素からのみ、クリック時に関数を実行したいと考えています。現在、それらはただabutton要素です。

noが設定されている場合でも、このコードがすべて aの要素に対して実行されるのはなぜですか?buttondata-title

$('a[data-title!=""], button[data-title!=""]').on('click', function() {
    // do something
});

何を変更すればよいですか?

4

2 に答える 2

2

Has Attribute セレクターを使用する

$('a[data-title], button[data-title]').on('click', function() {
    // do something
});
于 2013-10-30T02:14:49.697 に答える
1

必要なのは、属性が存在するセレクターです

$('a[data-title], button[data-title]').on('click', function() {
    // do something
});

なぜ?
あなたの条件ではチェックしていますdata-title!=""が、要素に属性がない場合、data-title属性値は(空の文字列)ではないため、テストはtrueを返します.null""result !== checknull !== ""

于 2013-10-30T02:15:10.040 に答える