You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在jQuery中为Laravel路由传递多个参数?解决参数缺失报错

解决Laravel路由多参数传递的缺失问题

错误原因

Laravel的route()助手函数传递多个路由参数时,不能直接以独立字符串的形式传递,必须将所有参数放入数组(按路由定义顺序)或关联数组(按参数名匹配)中,否则会被识别为参数缺失。

正确写法

方式1:按路由参数顺序传递数组

路由定义为orders/detail/{slug}/{id},参数顺序是slug在前、id在后,直接按顺序传入数组:

var url = "{{ route('order-detail', [':slug', ':id']) }}";
console.log(url);

方式2:用关联数组按参数名传递(更推荐)

通过参数名绑定传递,无需关注路由参数顺序,可读性更强:

var url = "{{ route('order-detail', ['slug' => ':slug', 'id' => ':id']) }}";
console.log(url);

替换为实际参数值

生成的URL模板为orders/detail/:slug/:id,后续在jQuery中可以用replace()方法替换为实际业务值:

// 示例:实际的slug和id数据
var actualSlug = 'sample-order-slug';
var actualId = 1001;

// 替换模板参数
var finalUrl = url.replace(':slug', actualSlug).replace(':id', actualId);
console.log(finalUrl); // 输出:orders/detail/sample-order-slug/1001

内容的提问来源于stack exchange,提问作者Muhammed shanid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 14:15:39