Laravel 如何通过输入序列号从某个产品的数据库中获取成本?

Laravel 如何通过输入序列号从某个产品的数据库中获取成本?,laravel,Laravel,我正在尝试开发一个简单的销售系统,如果用户输入一个序列号,它将自动显示产品的总成本 表格发票刀片 脚本 <script type="text/javascript"> var max_fields = 120; var wrapper = $(".input_fields_wrap"); var add_button = $(

我正在尝试开发一个简单的销售系统,如果用户输入一个序列号,它将自动显示产品的总成本

表格发票刀片

脚本

 <script type="text/javascript">
                    var max_fields      = 120;
                    var wrapper         = $(".input_fields_wrap"); 
                    var add_button      = $(".add_field_button");
                    var remove_button   = $(".remove_field_button");
                    var total = 0;


                    $(add_button).click(function(e){
                      e.preventDefault();
                      var total_fields = wrapper[0].childNodes.length;

                      if(total_fields < max_fields){
                        $(wrapper).append('<input type="text" name="serial" class="form-control" />');
                      }
                      $(document).ready(function(e){
                       $("input").change(function(){
                        var total = 0;
                        $("input[name=serial").each(function(){
                          total += parseInt($(this).val());
                        })
                        $("input[name=total]").val(total);
                      });

                     });

                    });

                    $(remove_button).click(function(e){
                      e.preventDefault();
                      var total_fields = wrapper[0].childNodes.length;
                      if(total_fields>1){
                        wrapper[0].childNodes[total_fields-1].remove();
                        $(document).ready(function(e){

                          var total = 0;
                          $("input[name=serial").each(function(){
                            total -= parseInt($(this).val());
                          })
                          $("input[name=total]").val(-total);
                        });


                      }


                    });
                  </script>

var max_字段=120;
变量包装=$(“.input_fields_wrap”);
var add_button=$(“.add_field_button”);
var remove_button=$(“.remove_字段_button”);
var合计=0;
$(添加按钮)。单击(功能(e){
e、 预防默认值();
var total_fields=wrapper[0].childNodes.length;
if(总字段<最大字段){
$(包装器)。附加(“”);
}
$(文档).ready(函数(e){
$(“输入”).change(函数(){
var合计=0;
$(“输入[name=serial”)。每个(函数(){
total+=parseInt($(this.val());
})
$(“输入[名称=总数]”).val(总数);
});
});
});
$(删除按钮)。单击(功能(e){
e、 预防默认值();
var total_fields=wrapper[0].childNodes.length;
如果(总字段数>1){
包装器[0]。子节点[total_fields-1]。删除();
$(文档).ready(函数(e){
var合计=0;
$(“输入[name=serial”)。每个(函数(){
total-=parseInt($(this.val());
})
$(“输入[name=total]”).val(-total);
});
}
});

您只需进行SQL查询,即可从数据库中根据特定产品的条件(产品id或序列号)查找产品成本。

据我所知,您试图实现的是异步查询数据库

为此,您应该有某种JavaScript代码,它向Laravel应用程序中的API发送请求并接收适当的数据

我可以看出您正在使用jQuery,因此最简单的方法是使用jQuery.ajax()

当用户输入ID时触发以下代码:

var globalCost = null;

$.ajax({
    url: "your/api/url",
    method: "post",
    contentType: 'application/json',
    dataType: 'json',
    data: {
       id: YOUR_ID,
    }
})
.done(function (response) {
    globalCost = response.cost
});
然后,在YourModelController中创建如下函数:

public function getCost(Request $request){
    $id = $request->input('id');
    return YourModel::where('id', $id)->pluck('cost');
}
上面返回给定ID的实例

您还需要一件事,那就是到API函数的路由。这可以在
API.php
web.php
/routes/
文件夹中完成。 例如:

Route::post('your/api/url', 'YourModelController@getCost');

这里没有任何东西可以向您的后端发送请求…但是如果这是个问题,先生,您将如何处理?我找不到关于这方面的好参考资料。网上有很多资源可以教您如何发送和接收数据。您需要
json
来执行此操作。也许查看
文本框自动完成
教程会有所帮助你.Removed BlockQuote但如果我在增加成本时使用实时,我应该怎么做?你使用的是一个具有核心PHP/PHP框架的MySQL数据库?下面应该可以。Model::where('serial_number',123)->get();我将如何将其用于我的刀片?在我将其用于我的控制器之后?通过将该变量发送到刀片。返回视图('welcome'))->有($数据);