0

ユーザーがselect2の閉じるボタンをクリックしたのか、それとも変更イベントがトリガーされたのかを確認したい。これは私のselect2入力です:

<%= hidden_field_tag :query, params[:query], :id => "query_txt" %>

私のcoffeescriptファイルで:

$('#query_txt').select2(
   #select2 options here, ajax, initSelection...etc
   #
   #
   #
   $("#query_txt").on "change", (e) ->
     if ($(".select2-search-choice-close").click ->)
       console.log "click on close"
 )

問題は、提案テキストをクリックすると、コンソールに「クリックして閉じる」というテキストが表示されることです。

つまり、この画像のようにx/remove ボタンをクリックすると:

ここに画像の説明を入力

次の画像のように候補テキストをクリックすると、同じ動作が発生します。

ここに画像の説明を入力

サンプル コードはhttp://jsfiddle.net/nqWNJ/9/にあります。

私の質問は、ユーザーが提案テキストをクリックしたとき、または閉じるボタンをクリックしたときをどのように知ることができるかです。

ありがとうございました

4

1 に答える 1

1

クリックでトリガーされる別のイベントを追加する必要があります。

$queryTxt = $('#query_txt') #cache object
$queryTxt.select2(
  #select2 options here, ajax, initSelection...etc
  #
  #
  #
)
$queryTxt.on 'change', (obj) ->
  console.log 'clicked on close' if obj.removed
  console.log 'change was triggered'
于 2013-03-23T13:00:26.230 に答える