1

正規表現に一致するすべての要素のクリック イベントをバインドしようとしています。jquery でそれを行う方法はありますが、コードを meteor フレームワークに変換する方法がわかりません。ここに私が取り組んでいるコードがあります:

https://github.com/dnpock/leaderboard/blob/master/leaderboard.js

$("input:regex(class, inc*)").click(function(e) {
    var tag = $(e.currentTarget);
    ...
});

私は.inc*jqueryでクラスにバインドしています。の構文はあります'click input.inc*'か?

4

3 に答える 3

4

CSS セレクターを使用して、次のように開始します。

'click input[class^="inc"]': function () {
}

編集:

内容:

'click input[class*="inc"]': function () {
}

で終わる:

'click input[class$="inc"]': function () {
}
于 2013-08-06T13:44:43.660 に答える
0

Meteor がこれらのタイプの構文をサポートしているかどうかはわかりません。しかし、別の回避策として、カスタムdata属性を使用して、増分するスコアのポイントを指定することをお勧めします。ドキュメントを参照してください。を使用して jQuery で取得できます.data(key)

たとえば、次のようにタグにdata-score属性を追加します<button>

<input type="button" class="inc" data-score="5" value="Give 5 points" />
<input type="button" class="inc" data-score="10" value="Give 10 points" />.

そして、これらの属性を次のように使用します。

'click input.inc': function (ev) {
    Players.update(Session.get("selected_player"), {$inc: {score: $(ev.target).data('score')}});
 },
于 2013-08-05T07:08:30.600 に答える
0

反応性のため、イベントをドキュメントにバインドする必要があります。

$(document).on("click", "input:regex(class, inc*)", function(e) {
  var tag = $(e.currentTarget);
});
于 2013-08-05T05:51:56.680 に答える