将ID传递给资源控制器进行编辑



我试图通过AJAX请求在Laravel发送记录ID到资源控制器进行编辑。我的代码如下:

function editdetails(id) {
$.ajax({
type:'GET',
url:"{{ route('users.edit', id ) }}",
success:function(data){
console.log(data);
}
});
}

但是我得到如下错误:

Use of undefined constant id - assumed 'id' (this will throw an Error in a future version of PHP) 

可以这样使用:

var id = id;
var url = "{{ route('users.edit',":id") }}";
url = url.replace(':id', id);

在你的代码中:替换:

function editdetails(id) {
var id = id;
var url = "{{ route('users.edit',":id") }}";
url = url.replace(':id', id);
$.ajax({
type:'GET',
url: url,
success:function(data){
console.log(data);
}
});
}

因为你在这里使用javascript,你不能使用刀片语法。为了实现这一点,你要么必须使用URL作为你在路由文件中定义的字符串:

url: "/your/url/" + id 
//or
url: `/your/url/${id}`

或者你可以把你的路由保存在页面的某个隐藏元素中,然后在js中使用它,例如:

//define in blade file
<input type="hidden" id="edit-url" value="{{route('users.edit', $id )}}">

//use in js file
let url = $('#edit-url').val()
url: url

相关内容

  • 没有找到相关文章

最新更新