jquery - 如何在select 2 jquery中显示列表数据并查找数据

标签 jquery ajax laravel jquery-select2

我有一个数据数组,已经做成JSON,然后我想在select中显示它,然后我可以根据输入找到数据

这是我的 Controller

$response = $this->GET(config('constant.url').'school-list');
return json_encode($response);

这是我的 Blade View

<div class="form-group">
  <label for="inputGrade">Select School</label>
  <select class="cari form-control" style="width:525px;" name="cari">
      <option value="disable"></option>
  </select>
</div>

$('.cari').select2({
        placeholder: 'Cari...',
        ajax: {
        url: '/select/school',
        dataType: 'json',
        delay: 250,
        data:function(param){
            return{
                school_name:param.term
            }
        },
        processResults: function (data) {
            return {
                results: $.map(data, function (item) {
                    return {
                        school_name: item.school_name,
                        school_id: item.school_id
                    }
                })
            };
        },
        cache: true
        }
    })

这是我的 json

{
    "STATUS": 200,
    "MESSAGE": "SUCCESS",
    "DATA": [
        {
            "school_id": 11,
            "school_name": "ACS Jakarta"
        },
        {
            "school_id": 13,
            "school_name": "Al Azhar 20"
        },
        {
            "school_id": 14,
            "school_name": "Al Azhar 23"
        },
        {
            "school_id": 15,
            "school_name": "Bangun Insan Mandiri"
        },
        {
            "school_id": 16,
            "school_name": "Bina Bangsa School Kebon Jeruk"
        },
     ]
}

我已经尝试了几次,但我编码的数据列表不存在

最佳答案

processResults 函数中将 school_name 更改为 text,将 school_id 更改为 id

processResults: function (data) {
  var response = JSON.parse(data);
    return {
        results: $.map(response.DATA, function (item) {
            return {
                text: item.school_name,
                id: item.school_id
            }
        })
    };
},

查看更详细answer会对你有所帮助。

关于jquery - 如何在select 2 jquery中显示列表数据并查找数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59280546/

相关文章:

javascript - 添加和删​​除额外的表单

jQuery AJAX 调用 Express (nodejs) 框架上的 Passportjs 登录

javascript - 使用 javascript 将外部 .html 加载到 div 中

php - (Laravel)只检索有关系的用户

javascript - jQuery change() 事件 - 不适用于 bind()、live()、keyup+keydown+keypress,什么都没有

javascript - 如何在函数中创建一个等于 this 的 jquery id 选择器?

javascript - Firefox 中不向服务器发送 ajax 请求

php - 在远程服务器上部署 laravel MySQL 数据库

php - 我在哪里可以找到 Laravel 中的护照 key ?

jQuery 验证动态输入