当前位置: 首页 > 面试题库 >

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

公良鸿光
2023-03-14
问题内容

我在我的搜索框中使用了select2。我从URL获取结果,但是无法从中选择一个选项。我想使用“
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 {
                        productname: term 
                    };
                },
                results: function(data,page) {

                    return {results: data.result_object};
                }
            },
            formatResult: dataFormatResult, 
            formatSelection: dataFormatSelection, 
            dropdownCssClass: "bigdrop", 
            escapeMarkup: function(m) {
                return m;
            } 
        });
    });

这是我的resut_object

"result_object":[{"productName":"samsung galaxy s3","manufacturer":"Samsung","productOptions":"Color;Memory","productOptiondesc":"Silver;32GB"},{"productName":"samsung salaxy s3","manufacturer":"Samsung","productOptions":"Color;Memory","productOptiondesc":"Graphite;32GB"},{"productName":"samsung galaxy s3","manufacturer":"Samsung","productOptions":"Color;Memory","productOptiondesc":"Silver;16GB"}]

问题答案:

您缺少结果数据的id属性。如果没有,则使选项“不可选择”。

例:

            $('#e7').select2({
                    id: function(e) { return e.productName; },
            });


 类似资料:
  • 问题内容: 每当我在应用程序中搜索时,都会显示正确的结果,但是当我点击搜索的单元格时,在执行搜索之前,它始终会播放表格的第一个索引。我试图在我的didselectcell中使用isSearching Bool,但似乎无法正常工作。 问题答案: 我认为问题在于您正在跟踪自己是否在搜索和操作源数据数组。 我有一个示例游乐场代码段,我已将其用于其他一些答案,该示例向您展示了如何更有效地执行此操作,并提供

  • 问题内容: 我正在使用Select2 3.5.1。使用此插件,我可以成功加载远程数据。但是,我今天在这里问一个问题,以改善这一搜索条件。这是逐步了解我想做的事情: 通过远程数据加载(使用ajax)设置Select2。 单击Select2输入并搜索。 将出现加载,几秒钟后,您将看到结果列表。 单击列出的结果之一-结果框将消失。 如果再次单击搜索框,则列表将为空,您将需要再次输入一些新文本以得到结果列

  • 我目前正在参与使用Liferay(6.1 GA2)的项目。Liferay搜索结果似乎提供了指向Web内容片段的链接,而不是指向包含这些片段的页面的链接。 你们中有人经历过这个问题吗?你知道怎么解决吗? 非常感谢朋友们。 最好的,阿尔贝托

  • 问题内容: 我需要您的帮助,这是我的SQL查询: 这是我的结果: 现在我必须计算第一个查询的结果! 问题答案: 您可以将查询换成另一个: 参见带有演示的SQL Fiddle 为了使其工作,需要一个列别名,并且您必须为子查询本身提供一个别名。

  • 我到处找了又找,但还是找不到解决问题的办法。我还不熟悉php和codeigniter,所以可能我已经错过了答案,但不管怎样,下面是我要做的。 这是我的控制器(c_index.php)-调用搜索函数并对结果数组执行分页。 这是我的视图(index.php)-基本上只是显示分页结果 我的模型(m_search.php)-基本上搜索数据库并返回结果数组。 类M_搜索扩展了CI_模型{ 现在我的问题是保留

  • 我正在调用YouTube API,截至上周,它不再始终如一地在特定频道上查找最新发布的视频。 我正在使用文档中实际的“尝试这个API”窗口(这里有一个已经输入参数的链接): https://developers.google.com/youtube/v3/docs/search/list?apix_params={"part":"snippet "," channelId ":" uci8e 0