相关疑难解决方法(0)

Select2 Ajax方法未选择

好吧,我确定这里有一些简单的设置错误,但我不是100%它是什么.

所以我试图使用Select2 AJAX方法作为用户搜索数据库和选择结果的方式.呼叫本身会返回结果,但不允许我从列表中选择答案.它似乎也不允许您在悬停或向上/向下箭头上"选择"它.所以不用多说,这是我的代码:

的index.html

<html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
        <link rel="stylesheet" type="text/css" href="select2/select2.css" media="screen" />
        <script src="select2/select2.js"></script>
        <script src="select.js"></script>
    </head>
    <body>
        <input type="text" style="width: 500px" class="select2">
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

select.js

jQuery(function() {

  var formatSelection = function(bond) {
    console.log(bond)
    return bond.name
  }

  var formatResult = function(bond) {
    return '<div class="select2-user-result">' + bond.name + '</div>'
  }

  var initSelection = function(elem, cb) {
    console.log(elem)
    return elem
  }

    $('.select2').select2({
      placeholder: "Policy Name",
      minimumInputLength: 3,
      multiple: false,
      quietMillis: 100,
      ajax: {
        url: "http://localhost:3000/search",
        dataType: 'json',
        type: …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery jquery-select2 jquery-select2-3

72
推荐指数
4
解决办法
5万
查看次数

无法从select2搜索结果中选择结果

我在我的搜索框上使用select2.我从我的网址获得结果,但我无法从中选择一个选项.我想使用'product.productName'作为选择后显示的文本.有什么我错过了或我做的任何错误.我已经包含了select2.css和select2.min.js,jquery.js

  function dataFormatResult(product) {
        var markup = "<table class='product-result'><tr>";

        markup += "<td class='product-info'><div class='product-title'>" +     product.productName + "</div>";
        if (product.manufacturer !== undefined) {
            markup += "<div class='product-synopsis'>" + product.manufacturer + "</div>";
        }
        else if (product.productOptions !== undefined) {
            markup += "<div class='product-synopsis'>" + product.productOptions + "</div>";
        }
        markup += "</td></tr></table>";
        return markup;
    }

    function dataFormatSelection(product) {
        return product.productName;
    }
    $(document).ready(function() {
        $("#e7").select2({
            placeholder: "Search for a product",
            minimumInputLength: 2,
            ajax: {
                url: myURL,
                dataType: 'json',
                data: function(term,page) {
                    return { …
Run Code Online (Sandbox Code Playgroud)

html php json jquery-select2

11
推荐指数
1
解决办法
8973
查看次数

Select2 4.0.0 无法选择结果

我正在尝试使用最新版本的 Select2 来查询我网站的 API 并返回一个多选。它正在获取正确的数据,甚至正确格式化下拉列表,将返回对象中的两个键组合为“(A-123) John Johnson”,但下拉列表没有响应鼠标悬停或点击。

我正在使用 select2.full.min.js 和 select2.min.css 文件。出于该项目的目的,我将它们包含在目录中并通过 cshtml 中的 Bundles 访问它们,而不是通过 CDN 访问它们。

HTML:

<div>
    <select class="user-list" multiple="multiple" style="width: 100%">
    </select>
</div>
Run Code Online (Sandbox Code Playgroud)

目前,它看起来像这样,这就是我想要的: 格式正确的下拉菜单

不确定这是否相关,但是当我在搜索时浏览生成的源代码时,输​​入看起来不错,但下拉列表的代码显示为灰色,好像它被隐藏了一样。

实心/不透明输入代码

灰色下拉代码

根据我在此处和其他地方找到的其他建议,我尝试了几种不同的解决方案。我最终发现了 templateResult 和 templateSelection 应该如何工作(不是特别感谢文档),并尝试返回 ID,但我似乎仍然无法实际选择任何内容,甚至在我悬停时得到响应选项。

这是我的结论,包括一些调试以确保返回的对象有效。

JS:

        // Setup autocomplete/select for User filter
        $(".user-list").select2({
            ajax: {
                url: "[api url]",
                type: "GET",
                dataType: "json",
                data: function (params) {
                    return {
                        search: params.term, // search term
                        page: params.page
                    };
                },
                processResults: function (data) {
                    console.log(JSON.stringify(data));
                    return {
                        results: data
                    };
                },
            }, …
Run Code Online (Sandbox Code Playgroud)

ajax json asp.net-mvc-4 jquery-select2-4

4
推荐指数
1
解决办法
5017
查看次数