我如何设置 url 来自 AJAX 的路线

how can i set url of route from AJAX

WEB(路由):

Route::get('/ajax-cat/edit/{id}', [App\Http\Controllers\AjaxCRUDController::class, 'categoryEdit'])->name('ajax.categoryEdit');

AJAX代码:

    $(document).ready(function () {
    $("#categoryBtn").click(function () {
        $("#catTable").show();
        let html = '';
        let i = 0;
        $.ajax({
            url: '/ajax-cat',
            type: "GET",
            success: function (data) {
                for (const x of data) {
                    html += `<tr>
                                <th scope="row">${++i}</th>
                                <td>${x.name}</td>
                                <td><a href="{{route('ajax.categoryEdit',${x.id})}}" class="btn btn-danger">Edit</a></td>
                            </tr>`;
                }
                $("#catTableBody").html(html);
            }
        });

    });
});

来自浏览器的图片:

但我想要 Link 这样:127.0.0.1:8000/ajax-cat/edit/2

您不能像这样合并不同的语言语法。

{{ }} 来自 Blade 指令。 https://laravel.com/docs/8.x/blade

x.id

是在您的 javascript 代码块中定义的变量。

您可以做的是:

var url = '{{route("ajax.categoryEdit", ":id")}}';
url = url.replace(':id', x.id);

然后您可以在 html 代码中连接 javascript 变量。