使用存储过程(mssql)中的数据填充select2

时间:2014-12-04 05:39:58

标签: jquery sql-server ajax laravel-4

我试图用我的查询中的一些数据填充select2。但不能让它正确运行...我搜索几乎所有关于此的链接,但所有解释都是如此糟糕的解释,特别是像我这样的初学者。我正在为这个项目使用laravel 4 ......

这是我的控制器代码

    public function showlist() {
    $query2 = "EXEC CFAsp_ColRls";

    $resultset2 = DB::connection('sqlsrv')->select($query2);

    return $resultset2;
}

这是我的jquery

       $(document).ready(function() {
     $("#e2").select2({
        ajax: {
          url: "http://localhost:8080/mytestproject2/public/showlist",
          dataType: 'json',
          data: function (term, page) {
            return {
              q: term
            };
          },
          results: function (data, page) {
            return { result: data };
          }
        }
      });
   });

非常感谢,我真的需要这个:D

2 个答案:

答案 0 :(得分:0)

您直接将Result传递给网页,使用

return json_encode($resultset2);

然后尝试访问。您不能直接分配数据,您需要解析数据以在jquery http://ivaynberg.github.io/select2/

中的select2插件中显示它

答案 1 :(得分:0)

好吧我错了:D。,谢谢花了一些时间

我通过修改我的控制器来解决我的问题......

    public function showlist() {

    $queryParam = Input::get('q');
    $return = array();

    $query2 = "Select * from sop10100 where sopnumbe like '%".$queryParam."%'";
    $resultset2 = DB::connection('sqlsrv')->select($query2);

    foreach ($resultset2 as $value) {
        $return[] = array(
            'id' => $value->DEX_ROW_ID,
            'text' => $value->SOPNUMBE
        );
    }

    return $return;

}

想通了" q"在这段代码中是一个参数

      data: function (term, page) {
        return {
          **q: term**
        };
      },

主题已关闭。