【问题标题】:Laravel AJAX Request not working of a restful controller for a methodLaravel AJAX 请求不适用于方法的静止控制器
【发布时间】:2015-03-09 15:11:08
【问题描述】:

Laravel AJAX 请求在方法的静止控制器中不起作用。

此 AJAX 请求不适用于 create 方法,但适用于 laravel 资源控制器的 index 方法。

第一个链接是索引方法。第二个链接是无效的创建方法。两个代码都是一样的

http://thetoppinghouse.com/laravel/public/listing
http://thetoppinghouse.com/laravel/public/listing/create

在这里你会得到我的代码摘要 http://laravel.io/bin/roYBY

我已经在这里发布了这个问题,但没有现场示例,但无法获得解决方案。 Laravel Ajax request not working of a controller

这是我的 AJAX 代码摘要

// AJAX Requesst
 <script>
      $('#parent_ID').on('change',function(e){
          console.log(e);

          var cat_id = e.target.value;

          // AJAX
          $.get('ajax-subcat?cat_id=' + cat_id, function(data){
          $('#subcategory').empty();
           $.each(data, function(index, subcatObj){
           $('#subcategory').append('<option value="'+subcatObj.id+'">'+subcatObj.name+'</option>')

               });

            console.log(data);


          });
          });

</script>

And routes is here

// routes.php

Route::resource('listing','ListingController');
Route::get('ajax-subcat', function(){
    $cat_id = Input::get('cat_id');
    $subcategories = Subcategory::where('parent_ID', '=', $cat_id)->get();
    return Response::json($subcategories);
});

【问题讨论】:

  • 我回答了你的问题,但想说几句。我们通常不喜欢仅链接代码而不粘贴相关部分的情况。这是由于可搜索性受损以及外部站点出现故障的可能性。请在您的问题中添加相关代码。此外,您不应该两次发布相同的问题。我会让它溜走,因为另一个已经变得有点乱了,这样可能会更好......
  • 好的,那么我将编辑我的问题,并在我提出问题时尝试遵循您的建议。
  • 顺便问一下,你对我之前的问题有什么看法,这与这个问题相似。我已经考虑过删除,但有些答案得到了一些观点,这就是为什么我没有删除我的问题。这种情况我该怎么办?
  • 我刚刚投票决定将旧问题作为重复问题关闭。如果它将被关闭,答案仍然存在,用户可以保留他的积分,但其他人将无法回答...

标签: ajax laravel get controller


【解决方案1】:

问题是您的 javascript 代码正在向ajax-subcat?cat_id=1 发出 ajax 请求,这是一个 相对 URL。这意味着:

/laravel/public/listing => /laravel/public/ajax-subcat
/laravel/public/listing/create => /laravel/public/listing/ajax-subcat

由于您已经在刀片模板中拥有了 javascript,您可以轻松地让 Laravel 生成 URL:

 // AJAX
 $.get('{{ URL::to('ajax-subcat') }}?cat_id=' + cat_id, function(data){
     $('#subcategory').empty();

【讨论】:

  • 你很棒@lukasgeiter
猜你喜欢
  • 1970-01-01
  • 2017-02-26
  • 2016-03-20
  • 2015-03-04
  • 2013-12-09
  • 1970-01-01
  • 1970-01-01
  • 2017-01-31
  • 2015-12-29
相关资源
最近更新 更多