繁体   English   中英

jQuery select2 genemuFormBundle问题

[英]jQuery select2 genemuFormBundle issue

我正在尝试按照此示例使用select2实现ajax调用: https : //github.com/genemu/GenemuFormBundle/blob/master/Resources/doc/jquery/select2/ajax.md

这是我的代码:

        var $configs = {{ configs|json_encode|raw }};

    $field = $('#{{ id }}');
    $configs = $.extend($configs, {
        ajax: {
            id: function (friend) { return friend.username; },
            url: $field.data('url'),
            data: function (term, page) {
                return { q: term, page_limit: 10, page: page };
            },
            results: function (data, page) {
                var more = (page * 10) < data.total;
                return { results: data, more: more };
            }
        },
        formatResult: function (friend) {
            var markup = "<div class='friend-results-box'>";
            if (friend.avatar !== undefined) {
            markup += "<img width='60' height='75' src='" + friend.avatar + "'/>";
            }
            markup += "<h5>" + friend.username + "</h5>";
            markup += "<div class'clearfix'></div>";
            markup += "</div>";
            return markup;
        },
        initSelection : function (element, callback) {
            var elementText = $(element).attr('data-init-text'); // ?
            callback({"term":elementText});
        },
        formatSelection: function (friend) { return friend.username; },
        escapeMarkup: function (m) { return m; },
        dropdownCssClass: "dropdown-friends"
    });

    $field.select2($configs);

现在我的问题是:

  1. 当我打算从那里定义为friend.username的json取值时,用ID填充值
  2. 页面重新加载后,屏幕上未显示初始值(因为该值已设置为ID),并且select2不会选择它

任何提示或帮助将不胜感激!

您的initSelection函数具有以下内容:callback({“ term”:elementText});

默认情况下,Select2期望{id:“ someid”,text:“ sometext”}

最好从简单开始,不进行任何格式设置,开始工作,然后使其看起来像您想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM