0

私はこのjsonファイルを持っています/api/searches

[{"id":"513dbb61a61654a845000005","text":"ingeniero agrónomo"},{"id":"513a11d4a6165411b2000008","text":"ingeniero industrial"}]

select2を使用して結果を表示しています。

これは私の現在のselect2設定です:

$('#query_txt').select2
  createSearchChoice: (term, data) ->
    if $(data).filter(->
      @text.localeCompare(term) is 0
    ).length is 0
      id: term
      text: term
  width: 'resolve'
  minimumInputLength: 3
  tags: true
  showSearchBox: true
  maximumSelectionSize: 1
  closeOnSelect: true
  multiple: false
  selectOnBlur: true
  ajax:
    url: "/api/v1/cvs/searches"
    quietMillis: 100
    dataType: 'json'
    data: (term, page) ->
      q: term, 
      page_limit: 9
    results: (data, page) ->
      results: data
  initSelection: (element, callback) ->
    $.get "/api/searches/" + element.val(), (data) ->
      callback {id: data.id, text: data.occupation}

この例では、テキストフィールドに単語またはランダムな単語を入力し、入力フィールドの出力をクリックした場合は、 http://jsfiddle.net/nqWNJ/6/またはhttp://jsfiddle.net/uDrvp/1/"asdfasdf"、キーワードは入力内に残り、このキーワードはselect2によって削除されません。

結果が見つからない場合、またはユーザーがテキストフィールドの外側をクリックした場合、キーワードは削除されず、フォームは無効になりません。

どうすればこの目的を達成できますか?

4

1 に答える 1

1

構成にオプションを追加selectOnBlur:trueし、最新のマスターにアップグレードする必要があります。ここに実用的なフィドルがあります:http://jsfiddle.net/nqWNJ/7/

于 2013-03-15T19:07:33.740 に答える