jquery - onclick 使用 ajax laravel 从数据库获取数据

标签 jquery json ajax laravel laravel-5.4

我想做的是当我单击列表项时在下拉菜单中加载data-id,它需要从数据库检索数据并附加到表中。

到目前为止,我在下拉菜单中加载了数据 ID,并在单击列表时发送 ajax 调用来检索数据。

我的代码( Controller 页面):

public function calcList($id)
{

    $designId=design::find($id);
    $design = design::select( `design_no`, `design_name`, `weight_length`, `quantity`, `design_image`, `des2`, `des3`, `des4`, `des5`, `des6`, `des7`)->where('id','=',$designId);
    // return Response::json(array('datas' => $design));
    // return response()->json(['data'=>$design]);
    return Response::json($design);
}  

Ajax 请求:

$(document).ready(function() {
    $('.designList').click(function() {
        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        var id =($(this).attr("data-id"));
        $.ajax({
             type:"POST",
             url:"/calc_list/"+id,
             success : function(results) {
                 console.log(results);
             }
        }); 
    });
});  

On the console log, the results print like {..}
How to built the json to table?

最佳答案

您不需要查找 designId。 你只需要做

    public function calcList($id) {


    $design = design::select( `design_no`, `design_name`, `weight_length`, `quantity`, `design_image`, `des2`, `des3`, `des4`, `des5`, `des6`, `des7`)->where('id',$id)->get();  

    return Response::json($design);
}

您不应该通过首先查找带有 id 的单个设计然后再次使用它来获取 design_no、design_name 等来对数据库进行另一次查询。这似乎是多余的。

关于jquery - onclick 使用 ajax laravel 从数据库获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46019539/

相关文章:

java - 如何用Java生成Json

javascript - Node.js 如何将 Ajax 成功消息传递给 app.js

php - ajax 成功功能不起作用但显示在 firebug 控制台中

javascript - 如何使用 jquery 将 CSS 添加到元素,仅使用一个类来标识该元素,并且仅当 innerHTML 中的时间在现在的 5 分钟内?

php - 为行分配数字,删除后返回正确的顺序

javascript - 使用 jquery 解析 JSON 以获得一些值

Javascript 门面模式从不显示初始设置

javascript - 无法使用 yaml.js 将 YAML 解析为 JSON

ajax - 保持数据与服务器同步

javascript - 防止 JQuery 触发多个 AJAX GET 请求