【问题标题】:How to concat url in Ajax with format Laravel routes?如何在 Ajax 中使用 Laravel 路由格式连接 url?
【发布时间】:2020-08-26 20:16:25
【问题描述】:

我有这样的 Ajax 错误代码:

$.ajax({
    type: "GET",
    dataType: "json",
    url: "{{ route('siswa-tugas-get-soal-opsi', ['id_pilihan_ganda' => "+val.id+"]) }}",
    success: function (data) {
          console.log(data.options);
    }
});

如果 url 我重写如下:(它有效)

url: "{{ route('siswa-tugas-get-soal-opsi', ['id_pilihan_ganda' => 3]) }}",

"+val.id+"错了吗?

【问题讨论】:

  • 你必须更具体。你看到什么样的错误? val.id 到底是什么?您想要的 URL 应该是什么样的? route('siswa-tugas-get-soal-opsi' ...的路径是什么?

标签: javascript jquery ajax laravel-5


【解决方案1】:

是的,因为您混淆了bladejavascript

当页面加载(在服务器中)时,{{ route('siswa-tugas-get-soal-opsi', ['id_pilihan_ganda' => 3]) }} 这段代码将在Laravel Blade Engine 上呈现。但这里val.id 是一个Javascript 变量。它将在页面加载后执行。

解决方案

您需要在 PHP 中保存 $val['id'] 而不是 Javascript。并尝试,

{{ route('siswa-tugas-get-soal-opsi', ['id_pilihan_ganda' => $val['id']]) }}

您需要用 Javascript 编写硬编码 URL。 (不是最佳做法)喜欢,

url: "your/url/route/"+val.id+"/rest/path",

【讨论】:

    猜你喜欢
    • 2019-03-27
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 2017-04-01
    • 2018-04-04
    • 2022-01-25
    • 2012-11-25
    相关资源
    最近更新 更多