选择未从数据库加载的下拉列表

时间:2014-03-26 15:03:36

标签: php ajax laravel selectize.js

我提到http://maxoffsky.com/code-blog/laravel-shop-tutorial-3-implementing-smart-search/在我的laravel应用程序中实现搜索功能

当我使用来自http://brianreavis.github.io/selectize.js/的远程源的javascript示例代码时,它的工作非常正常。但是当我使用它从我自己的控制器方法加载数据时,它不会填充选择菜单中的项目。

这是我的控制器方法

public function index(){

$query = e(Input::get('q',''));

if(!$query && $query == '') return Response::json(array(), 400);

$products = User::where('firstname','like','%'.$query.'%')
  ->orderBy('firstname','asc')
  ->take(5)
  ->get(array('talent','firstname','profilepic','username'))->toArray();

$categories = User::where('talent','like','%'.$query.'%')
  ->take(5)
  ->get(array('talent', 'firstname','username'))
  ->toArray();


// Merge all data into one array
$data = array_merge($products, $categories);

    return Response::json(array(
    'data'=>$data
  ));
 }

我已使用以下代码

初始化了我的选择
 $(document).ready(function(){



        $('#searchbox').selectize({    
        valueField: 'name',
        labelField: 'firstname',
        searchField: 'firstname',
        options: [],
        render: {
                option: function(item, escape) {
                    return '<div>hello</div>';
                }
            },
        load: function(query, callback) {
                if (!query.length) return callback();
                $.ajax({
                    url: root + '/search',
                    type: 'GET',
                    dataType: 'json',
                    data: {
                        q: query
                    },
                    error: function() {
                        callback();
                    },
                    success: function(res) {
                        callback(res.data);
                    }
                });
            },
            onChange: function(){
                window.location = this.items[0];
            }
         create: false
           });
         });

我无法弄清楚我错过了什么

1 个答案:

答案 0 :(得分:0)

我会考虑比较查询正常工作的示例远程服务时的数据,然后比较从控制器检索数据时的数据。我怀疑这可以让您轻松了解数据显示格式的不同之处,以及需要采取哪些步骤来更改数据。如果你仍然被卡住,你可以从这里发布结果json,我可能会给你进一步的指导,让你的他们与他们对齐。