【问题标题】:problem in passing parameters in $(document).ready(function() ajax url in Laravel在 Laravel 中的 $(document).ready(function() ajax url 中传递参数的问题
【发布时间】:2020-04-03 09:53:40
【问题描述】:

我的路线是

Route::get('staff/staffcardview/{dept}',['as' => 'StaffCardView', 'uses' => 'Staff\StaffController@showcards']);

我想使用 ajax 从 document.ready 函数向这个 url 传递参数

$.ajax({
    type: 'get',
    url: '{{ URL::route("StaffCardView") }}',
    data: { id: 2 },

但它显示错误

缺少 [Route: StaffCardView] [URI: 员工/员工/员工卡视图/{部门}]。 (看法: D:\VJCET_29_11\vjcetcrm\vjcetcrm\resources\views\staff\staffcardview.blade.php)

【问题讨论】:

  • 您的路由在 URL 中定义了一个必填参数,您需要在生成该路由的 URL 时传递该参数

标签: ajax laravel parameters routes


【解决方案1】:

你错过了路由中的参数,这样做:

$.ajax({ 
    type: 'get', 
    url: "{{ route('StaffCardView', $card->debt) }}", 
    data: { id: 2 },

【讨论】:

    【解决方案2】:

    您的路线具有必需的参数{dept}。在创建路由时尝试传递值或将其作为可选参数

    1. $.ajax({ type: 'get', url: '{{ URL::route("StaffCardView",['dept' => 'somedummyvalue'] ) }}', data: { id: 2 })

    Route::get('staff/staffcardview/{dept?}',['as' => 'StaffCardView', 'uses' => 'Staff\StaffController@showcards']);
    
    ...
    
    $.ajax({ type: 'get', url: '{{ URL::route("StaffCardView") }}', data: { id: 2 })
    

    【讨论】:

      【解决方案3】:

      这样使用:

      $.ajax({ type: 'get', url: "{{ route('StaffCardView', ['dept' => 2]) }}", data: { id: 2 },
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-07-23
        • 2010-12-11
        • 1970-01-01
        • 2020-12-08
        • 2011-04-01
        • 2011-05-22
        • 1970-01-01
        • 2023-03-31
        相关资源
        最近更新 更多