将ID从Laravel API传递到Select2脚本的问题

时间:2018-11-20 08:37:21

标签: laravel api jquery-select2

我有一个奇怪的问题,因为以前在我的应用中,此代码有效,但现在不起作用。 我通过网址从Laravel API获取数据:

/api/customer/{id}/products

要选择2个脚本

$('.js-data-example-ajax').select2({
    ajax: {
    url: '/api/customer/{id}/products',
    dataType: 'json',
    data: function (params) {
      var query = {
        q: params.term,
      }
    return query;
}

但是Laravel用这种方式创建网址:

api/customer/%7Bid%7D/products

所以,我有%7Bid%7D而不是{id},我正在Google中寻找解决方案,但没有成功。

1 个答案:

答案 0 :(得分:2)

字符“ 7B”是{转换为asci,在ajax请求创建var调用“ url”之前

我用他的名字叫这条路线,给它加上名字就可以了

->name('your_name') in the route file

,然后在url变量中使用路由名称代替完整的URL

url = '{{ route("your_route_name", ":id") }}';

然后将id占位符替换为select

url = url.replace(':id', id);

最终在ajax请求中

ajax: { 
    url: url, 

    //the rest of ajax request
}