URL :: Action()和JavaScript INT变量之间的串联



我需要在laravel中执行AJAX请求,而URL是TNE URL :: Action方法与JavaScript Integer变量之间的串联。

视图中的JavaScript函数为

function detailMaintenanceVehicle(vehicleId,placa){
    var url = "{{ URL::action('DetailMaintenanceController@getDetailMaintenance',["+vehicleId+"]) }}";
    console.log(vehicleId); // This prints integer variables 1,2,3..
    console.log(url); // This prints a string http://localhost/.../detailMaintenance/+vehicleId+
    $.ajax({
        url: url,
        dataType: 'json',
        type: 'GET',
        success: function(data) {
            ...
        },
        error: function(jqXHR, textStatus, errorThrown) {
            ...
        }
    });
}

串联使用变量名称,必须使用该值。

//给予:http://localhost/.../detailmaintenance/ vehicleid

//我需要:http://localhost/.../detailmaintance/3(例如)

请帮助我。预先感谢!

您可以尝试:

var url = "{{ URL::action('DetailMaintenanceController@getDetailMaintenance', ['vehicleId' => 'vehicleId']) }}";
url.replace("vehicleId", vehicleId);

您切勿使用PHP生成JS。使用数据创建隐藏的输入,例如:

{!! Form::hidden('url, action('DetailMaintenanceController@getDetailMaintenance)) !!}

如果您的操作需要ID,请手动编写部分URL。

然后在JS中获取它:

var url = $( "[name='url']" ) + vehicleId;

您必须为此方法控制器创建路由: 路由:: any('ajaxrequest/{phaterId}',"详细信息maintenancecontroller@getDetailMaintenance");

然后,在需要更改JavaScript之后,如下所示:

function detailMaintenanceVehicle(vehicleId,placa){
var url = "{{ URL::to('ajaxRequest/') }}"+vehicleId; //YOUR CHANGES HERE...
console.log(vehicleId); // This prints integer variables 1,2,3..
console.log(url); // This prints a string http://localhost/.../detailMaintenance/+vehicleId+
$.ajax({
    url: url,
    dataType: to'json',
    type: 'GET',
    success: function(data) {
        ...
    },
    error: function(jqXHR, textStatus, errorThrown) {
        ...
    }
});
}

最新更新