Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何修复使用ajax和laravel访问路由时找不到的404_Javascript_Php_Ajax_Laravel - Fatal编程技术网

Javascript 如何修复使用ajax和laravel访问路由时找不到的404

Javascript 如何修复使用ajax和laravel访问路由时找不到的404,javascript,php,ajax,laravel,Javascript,Php,Ajax,Laravel,我目前是laravel的新开发人员,我在访问路线时遇到问题,如果我尝试单击我的响应上的编辑按钮,它会给我错误。此错误显示在我的产品上,但在我的本地主机上,未显示此错误。我的问题是为什么会显示此错误 “例外情况”: “Symfony\Component\HttpKernel\Exception\NotFoundHttpException” Ajax: $('.news_and_events_edit_btn').on('click',function(e){ e.preventDefau

我目前是laravel的新开发人员,我在访问路线时遇到问题,如果我尝试单击我的响应上的编辑按钮,它会给我错误。此错误显示在我的产品上,但在我的本地主机上,未显示此错误。我的问题是为什么会显示此错误

“例外情况”: “Symfony\Component\HttpKernel\Exception\NotFoundHttpException”

Ajax:

$('.news_and_events_edit_btn').on('click',function(e){

    e.preventDefault();

    var id = $(this).attr("data-content-id-edit");

    $('.news_and_events_hidden_update_id').val(id);

    $.ajax({
        url:'/get_news_and_event_data',
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
            $('#update_news_and_events_title').val(res[0].content_title);
             update_appEditor_news_and_event.data.set(res[0].content_desc);

        },
        error:function(err) {
            console.log(err);

        }
    });
});
Route::get('/get_news_and_event_data','CMSController@get_news_and_event_data')->name('get_news_and_event_data');
路线:

$('.news_and_events_edit_btn').on('click',function(e){

    e.preventDefault();

    var id = $(this).attr("data-content-id-edit");

    $('.news_and_events_hidden_update_id').val(id);

    $.ajax({
        url:'/get_news_and_event_data',
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
            $('#update_news_and_events_title').val(res[0].content_title);
             update_appEditor_news_and_event.data.set(res[0].content_desc);

        },
        error:function(err) {
            console.log(err);

        }
    });
});
Route::get('/get_news_and_event_data','CMSController@get_news_and_event_data')->name('get_news_and_event_data');
错误:

$('.news_and_events_edit_btn').on('click',function(e){

    e.preventDefault();

    var id = $(this).attr("data-content-id-edit");

    $('.news_and_events_hidden_update_id').val(id);

    $.ajax({
        url:'/get_news_and_event_data',
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
            $('#update_news_and_events_title').val(res[0].content_title);
             update_appEditor_news_and_event.data.set(res[0].content_desc);

        },
        error:function(err) {
            console.log(err);

        }
    });
});
Route::get('/get_news_and_event_data','CMSController@get_news_and_event_data')->name('get_news_and_event_data');

使用content\u id参数更改
路线
ajax url
,然后重试

路线

Route::get('/get_news_and_event_data/{content_id}','CMSController@get_news_and_event_data')->name('get_news_and_event_data');
AJAX调用

     $.ajax({
        url:'/get_news_and_event_data/{content_id}',
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
            $('#update_news_and_events_title').val(res[0].content_title);
             update_appEditor_news_and_event.data.set(res[0].content_desc);

        },
        error:function(err) {
            console.log(err);

        }
    });

您应该在ajax请求中使用
路由
。 它会将您重定向到
路线

$.ajax({
        url:"{{ route('get_news_and_event_data') }}",
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
      }
例如,我有一个代码

jQuery.ajax({
   url: "{{ route('SomeUrlHere') }}",
   method: 'get',
   data: {
       id : id
  }
success: function(data){
    if(data) {
         console.log(data);
    }

将url更改为类似以下内容

var id = content_id;

$.ajax({
        url: '{{ URL::route('get_news_and_event_data') }}/'+id,
        type:'get',
        data:{content_id: id},
        dataType:'JSON',
        success:function(res) {
            $('#update_news_and_events_title').val(res[0].content_title);
             update_appEditor_news_and_event.data.set(res[0].content_desc);

        },
        error:function(err) {
            console.log(err);

        }
    });

为了解决我的问题,我发现有一个子文件夹,所以从url:“/获取新闻和事件数据”,到url:“/…获取新闻和事件数据”


感谢blade文件中的所有ajax代码?请尝试在ajax请求中添加一个绝对url,以测试它是否仍返回404。@kelvinkantaria您的意思是什么?@Rajenderma绝对url的意思是什么?在ajax url测试中使用url:“用您的网站url替换example.com,还要检查您是否在路由中未使用任何前缀,如果您在URL中使用了前缀,那么请在“我的文档准备就绪”顶部添加标记。。$.ajaxSetup({headers:{'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]')).attr('content')});为什么在GET请求中需要csrf_令牌?很抱歉它不起作用,它给出了404找不到。我所有的ajax函数都不起作用,甚至插入它显示的数据404也没有找到,所以您的代码可能是错误的dubug您的代码,并找出确切的代码在哪里被破坏。另请检查
存储/log/
以了解最新的错误登录已解决我的问题我需要做的url是url:../route谢谢大家..很抱歉它不起作用,它提供404找不到。我所有的ajax功能都不起作用,甚至插入显示的数据404未找到我已经解决了我的问题我需要做的url是url:../route谢谢大家..抱歉它不起作用,它给出了404未找到。我所有的ajax函数都不起作用,甚至插入了它显示的404未找到的数据。不要使用数据类型:JSON。@SoulAiker我已经添加了示例代码,请遵循这一点,或者查看文档我已经解决了我的问题。我需要做的url是url:../route谢谢大家..如果你发布你是如何解决问题的,这将非常有用。