错误在laravel 4中提交表单ajax

时间:2015-10-17 15:05:15

标签: ajax forms laravel-4 submit

我想在laravel 4中使用ajax提交表单。但是我收到了这个错误: 无法加载资源:服务器响应状态为500(内部服务器错误)

这是我的routes.php

Route::post('agenda/setting/fechas',            array( 'as' => 'post.fecha.agenda',   'uses' =>'AgendaController@postFechas'));

我的控制器

public function postFechas(){

  if(Request::ajax()){
        $fechas1 = Input::get( 'fechas' );

        $fechas1 = new Fechasnulas();
        $fechas1->fecha_nula = $fechas1;
        $fechas1->save();

        $response = array(
            'status' => 'success',
            'msg' => 'Setting created successfully',
        );
             return Response::json($response); 
        }else{
            return 'no';
        }

}

查看

<form id="form_fechas" class="form-inline" method="POST" action="{{ URL::route('post.fecha.agenda') }}" accept-charset="UTF-8"/>
<div class="control-group">
    <div class="row-fluid input-append">
       <input class="span10 date-picker" id="id-date-picker-1" name="fechas" type="text" data-date-format="dd-mm-yyyy" />
        <span class="add-on">
        <i class="icon-calendar"></i>
        </span>
    </div>
       <div class="row-fluid">
         <br>
         <input type="submit" value="Deshabilitar" class="btn btn-small btn-success">                                               
       </div>
    </div>
    </form>

的Ajax

    jQuery( document ).ready( function( $ ) {

         $( '#form_fechas' ).on( 'submit', function(e) {
             e.preventDefault(); 
             var fecha = $('#fechas').val();
             $.ajax({
                        type: "POST",
                        url: "{{ URL::route('post.fecha.agenda')}}",
                        data: {fecha:fecha},
                        success: function(msg) {
                        $("muestra1").html("<div>"+msg+"</div>");
                        }
            });

        });
    });

我的代码有什么问题? =(

2 个答案:

答案 0 :(得分:0)

将您的ajax网址编辑为:

url: "agenda/setting/fechas"

答案 1 :(得分:0)

我得到了解决方案

控制器

public function guardarfecha(){

 $fecha_get = Input::get('fechainha');
 $fecha_nula =strftime("%Y-%m-%d",strtotime($fecha_get));

 $fecha = new Fechasnulas;
 $fecha->fecha_nula = $fecha_nula;

    if($fecha->save()){

        return Response::json(array( "response" => 1));

    }else {

        return Response::json(array( "response" => 0));

    }

}

AJAX

    $('#guardarfecha').click(function(){
            var fechainha = $('#fechainha').val();
            $.ajax({
                url  : "{{URL::route('post.fecha.agenda')}}",
                type : "GET",
                async: false,
                data : { 'fechainha': fechainha },
                dataType: "json",
                success:function(data)
                {
                    if(data.response == 1){                         

                        $("#muestraalert").html("<div class='alert alert-block alert-success'>Fecha inhabilitada</div>");                       

                    } else {
                        $("#muestraalert").html("<div class='alert alert-error'>Error al agregar la fecha</div>");

                    }
                }
            });
    });

HTML

<div class="control-group">
<div class="row-fluid input-append">
<input type="text" id="fechainha" name="fechainha"> 
<span class="add-on">                                   
<i class="icon-calendar"></i>
</span>
</div>
<div class="row-fluid">
<br>
<input type="button" value="Deshabilitar" id="guardarfecha" class="btn btn-small btn-success">                                              
</div>
</div>