通过Blade中的Ajax将变量发送到控制器

时间:2015-12-15 21:01:07

标签: javascript php jquery laravel laravel-5

我的变量包含以下数据

{"_method":"PUT","_token":"rs8iLxwoJHSCj3Cc47jaP5gp8pO5lhGghF1WeDJQ","id":"1"}

我想通过Ajax将它发送给控制器

我已尝试

$( "form#edit" ).on( "submit", function( event ) {
  event.preventDefault();

    $("#edit :input").each(function() {
        inputs[$(this).attr("name")] = $(this).val();
    });

    var $inputs = JSON.stringify(inputs);

    $.ajax({
        url: $url,
        type: 'PUT',
        dataType: 'json',
        data: $inputs ,
        success: function (data, textStatus, xhr) {

            console.log(data);
        },
        error: function (xhr, textStatus, errorThrown) {

            console.log('PUT error.', xhr, textStatus, errorThrown);
        }
    });

});

它一直在我身上失败。 我做错了什么吗?

1 个答案:

答案 0 :(得分:1)

我认为你的jQuery代码过于复杂。这样的事情应该有效:

$.ajax({
    type: "PUT",
    url: $url,
    data: $("form").serialize(),
    success: function () {

    },
    error: function () {

    }
});

jQuery函数serialize()是关键所在。