使用Jquery的Laravel-Ajax抛出500错误-使用服务器端的Probe

Laravel with Jquery - Ajax Throwing 500 Error - Prob with Server Side

本文关键字:服务器端 Probe Jquery Laravel-Ajax 抛出 使用 错误      更新时间:2023-09-26

。大家好。我正在尝试收集一些变量并将其发送到我的控制器。我一直收到一个500的错误,除了我很确定它的服务器端之外,我不知道我到底哪里出了问题。任何关于我哪里出了问题或更好的做法的建议都将不胜感激!非常感谢yall!

路线:

/*Ajax Edit Price on Price Page*/
    Route::post('edit_price', array(
        'as'    => 'edit_price',
        'uses'  => 'PriceController@edit_price'     
    ));

控制器:

public function price_edit(){
    console.log($id_and_db);
    }

JS:

/*Ajax edit prices*/
$(document).ready(function(){
        $('.edit_button').click(function(e){
        e.preventDefault();
        var id_and_db   = $(this).prop('name').replace('edit', 'newprice'),
        new_price   = $('[name=' + id_and_db + ']').val();
        $('#test').val(id_and_db);
        $.ajax({
            url: 'edit_price',
            type: "POST",
            data: {
                "id_and_db": id_and_db,
                "new_price": new_price,
            },
            success: function(data){
                $("#edit_results").html(data);
                $("#edit_results").addClass('panel callout radius');
                console.log(data);
            },
            error: function(xhr, status, error){
                console.log(xhr);
                console.log(status);
                console.log(error);
            },
        });
    });
});

错误消息:

POST http://localhost/local/example/public/edit_price 500 (Internal Server Error) jquery.min.js:4
XHR finished loading: POST "http://localhost/local/example/public/edit_price". jquery.min.js:4
Object {readyState: 4, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…}
 price_index_admin.js:40
error price_index_admin.js:41
Internal Server Error 

你做了

'uses'  => 'PriceController@edit_price'

但您的控制器方法是price_edit()

尝试将控制器方法更改为

public function edit_price() {

这对控制器无效-看起来你正试图在php:中运行java

public function price_edit(){
    console.log($id_and_db);
    }

应该是像这个

public function price_edit(){
    return Response::json(['your response here']);
    }