Laravel Request :: Ajax()不起作用

时间:2014-12-04 21:47:07

标签: jquery ajax laravel laravel-4

我正在尝试学习Laravel Ajax请求。

route.php

    Route::get('/repository/', 'RepositoryController@index');
    Route::post('/repository/', function(){
        if(Request::ajax()){
            return 'Got everything';
        }
    });

repository.index.php我有一个模态,在点击同一页面上带有以下标记的按钮时出现

@section('popups')
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
      </div>
      <div class="modal-body">
          <input type="text" name="name">
      </div>
        <a href="#" id="add">Submit</a>
      <div class="modal-footer">
        <button type="submit" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" name="add" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>


<script>
    $(document).ready(function(){


        $('.add').click(function(e){
           e.preventDefault(); 

           var name=$(this).find('input[name=name]').val();

           //post Ajax
           $.post('/repository', {name:name}, function(data){
              console.log(data);
           });
        });


    });
</script>

@stop

现在,看起来我无法在控制台中获取数据。将数据发送到数据库的最佳方法是什么?如果验证中有错误,我怎样才能在模型中显示它?

1 个答案:

答案 0 :(得分:1)

更新你的jQuery选择器:

$(document).ready(function(){

    $('#add').click(function(e){ // id=add
       e.preventDefault(); 

       var name=$(this).find('input[name=name]').val();

       //post Ajax
       $.post('/repository', {name:name}, function(data){
          console.log(data);
       });
    });
});

你正在寻找原始代码中的一个类,而锚有一个id! :)