jQuery Select2插件“查看更多...”,隐藏搜索文本字段问题

时间:2013-03-27 11:59:52

标签: jquery jquery-select2

我对jQuery Select2插件有一系列问题(我对Select2来说很新,只有一天):

  1. 我通过AJAX调用获取数据(使用Select2的ajax功能)和am 试图找出最后添加“查看更多...”选项的方法 下拉显示。点击“查看更多...”必须带我 到另一个单独的搜索页面。

    如果我可以进入加载AJAX的OnSuccess或OnComplete事件 打电话,然后我可以在下拉结果中找到相关的DIV并追加 “查看更多......”div。这甚至可能吗?

    我不想在Select2中使用“自动滚动”功能。

  2. 当用户输入时,我在Select2下拉列表旁边有一个搜索按钮 在搜索框中的某些字符中,我进行了AJAX调用 显示数据。在这里,我还需要用户点击时 搜索按钮,我应该在搜索框中键入值 进行另一次重定向。我面临的问题是 - 因为 Select2要求搜索框为AJAX加载“隐藏”,何时 用户搜索,搜索文本未填入隐藏字段,并且 我不知道在搜索文本中输入的位置是什么/如何。

  3. 当填写AJAX数据时,下拉列表中的第一项是 选中,如何不选中它。或者更好的是,如果他们使用 在列表中上下移动的键,如果你到达那里我会很酷 第一项和键,它专注于搜索文本框 - 很多 像LinkedIn搜索框一样。

1 个答案:

答案 0 :(得分: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/