微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

select2从文件中加载Ajax数据

我有一个名为listofValues.PHP的脚本,它查询数据库并返回 JSON格式值.

我需要的是将这些值传递给select2数据成员.我需要它加载一次.

我不需要将值从select2输入(term)传递给我的listofValues.PHP,如this example所述

$('#select2div').select2({
        //data:[],ajax: {
        dataType: "json",url: "listofvalues.PHP",success: function (data) {          
        }
    }

你可以帮我吗

简单的例子

知道您从listofvalues.PHP获取的对象的格式是有用的,但让我们假设为了简单起见,它看起来像这样:

[ {"id": 1,"text": "option1"},{"id": 2,"text": "option2"},{"id": 3,"text": "option3"} ]

这是最简单的格式,认情况下,select2可以处理具有属性名称id和文本的对象,并将它们渲染到下拉列表中.所以你的select2初始化可能如下所示:

$('#select2div').select2({
    ajax: {
        dataType: "json",results: function (data) {
            return {results: data};
        }
    }
});

稍微挑剔的例子

现在我们假设来自listofvalues.PHP的数据不遵循方便的命名约定:

[ {"id": 1,"firstName": "John","lastName": "Lennon"},"firstName": "Paul","lastName": "McCartney"},"firstName": "George","lastName": "Harrison"},{"id": 4,"firstName": "Ringo","lastName": "Starr"} ]

我们必须设置一个函数来处理输出

function formatValues(data) {
    return data.firstName + ' ' + data.lastName;
}

而我们的select2初始化:

$('#select2div').select2({
    ajax: {
        dataType: "json",results: function (data) {
            return {results: data};
        }
    },formatResult: formatValues
});

让我知道你怎么样

原文地址:https://www.jb51.cc/ajax/159861.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐