如何在 json 响应中发送多个参数? (拉拉维尔)

Posted

技术标签:

【中文标题】如何在 json 响应中发送多个参数? (拉拉维尔)【英文标题】:How can I send multiple parameter in json response? (Laravel) 【发布时间】:2021-10-20 10:18:46 【问题描述】:

我想使用 Ajax 从数据库中获取多个值,为此我使用以下代码:

public function getParty($party_id)
            $party_info = Credits::where('party_id',$party_id)->get();
            foreach($party_info as $row)
            
                $tariff_type=$row['vehicle_type'];
            
            $tariff = Tariff::where('nozzel_type',$tariff_type)->get();
            $Party_info=compact($party_info);
            $Tariff =compact($tariff);
            $data =[$party_info,$tariff];
            return response()->json($data);
        

在这段代码中,我使用$party_info$tariff 并发送它们作为响应,我找到了一个解决方案,可以像我在$data 中那样将它们放入一个新对象中,以便在我的视图中获取这些值文件我使用以下代码:

if(data)
                        $.each(data, function(key, value)
                          var p_amount = value.pending_amount;
                          var new_tariff = value.price;
                        document.getElementById('current_amount').value=new_tariff;
                        document.getElementById('pending_amount').value=p_amount;

                         );

如果我通过这个方法发送单个参数,它可以工作,但如果有多个参数,它就不起作用

【问题讨论】:

你能把 data 记录到控制台并查看结构吗?也许你在结果中有额外的层 另外,你最近使用$Party_info$Tariff 只使用[$party_info,$tariff] 【参考方案1】:

return response()->json(['Party_info'=>$Party_info,'Tariff'=>$Tariff]);

【讨论】:

欢迎来到 ***。您想帮助其他用户真是太好了,但答案应该不仅仅是一行代码。试着解释为什么你的答案是正确的,以帮助提问者学习。 @yakatz 这是一种指导某人的好方法,而不是那些只是取消投票答案或问题的人

以上是关于如何在 json 响应中发送多个参数? (拉拉维尔)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用带有 Recaptcha 的 AJAX 发送表单? [拉拉维尔]

拉拉维尔 5.5。验证请求重定向/响应

当响应是错误时,为啥承诺会进入 .then() ? - 拉拉维尔

附加了一个访问器但资源有多个,这怎么可能? - 拉拉维尔

拉拉维尔 | LinkedIn 和 Socialite - 不传递参数

拉拉维尔 |无法将多个关键字映射以返回组合结果 |找不到类“App\Http\Controllers\API\Post”