0

jQuery Select2プラグインに関する一連の質問があります(Select2は初めてで、1日しか経っていません)。

  1. (Select2のajax機能を使用して)AJAX呼び出しを介してデータを取得しており、ドロップダウン表示の最後に「もっと見る...」オプションを追加する方法を見つけようとしています。「もっと見る...」をクリックすると、別の別の検索ページに移動する必要があります。

    AJAX呼び出しをロードするOnSuccessまたはOnCompleteイベントに到達できれば、ドロップダウン結果で関連するDIVを見つけて、「viewmore...」divを追加できます。それも可能ですか?

    Select2の「自動スクロール」機能を使用したくありません。

  2. Select2ドロップダウンの横に検索ボタンがあり、ユーザーが検索ボックスに文字を入力すると、AJAX呼び出しを行ってデータを表示します。ここで、ユーザーが検索ボタンをクリックしたときにも必要なのは、検索ボックスに入力された値を取得して、別のリダイレクトを行う必要があることです。私が直面している問題はこれです-Select2ではAJAXの読み込みのために検索ボックスを「非表示」にする必要があるため、ユーザーが検索すると、検索テキストが非表示フィールドに入力されず、どこでどのように取得するかわかりません検索テキストを入力しました。

  3. AJAXデータが入力されると、ドロップダウンの最初の項目が選択され、選択されないようにする方法が示されます。さらに良いことに、キーを使用してリスト内を上下に移動する場合、最初の項目に到達してキーを上げると、LinkedInの検索ボックスと同じように検索テキストボックスに焦点が当てられます。

4

1 に答える 1

0

(1)「もっと見る」のコードは次のとおりです。

$("#select").on('open', function() { 
    $(".select2-results").append('<li class="select2-results-dept-0 select2-result select2-result-unselectable select2-result-with-children"><div class="select2-result-label view-more">View More</div></li>');
    $(".view-more").on("click", function() { window.location.href = "another_url"; });
});

(2)次の方法で検索ボックスの値にアクセスできます。

var searchValue = '';
$('.select2-search input').on('keydown', function(e) { 
    searchValue = $(this).val();
    console.log(searchValue);
});

$("#myBtn").on("click", function() { 
    alert(searchValue);
});

(3)デフォルトで選択されたオプションの選択を解除するには、次のコードをopen機能させます。

$('.select2-results .select2-highlighted').removeClass('select2-highlighted');

ここでどのように機能するかを確認できます:http://jsfiddle.net/netme/EW8t7/1/

于 2013-03-27T12:20:49.820 に答える