javascript - Laravel Jquery Ui Ajax 发布到 Controller 并为 Blade 获取值(value)

标签 javascript php jquery ajax laravel

我构建了基本的 Jquery Ui slider :

    $("#sliderNumCh").slider({
        range: "min",
        min: 0,
        max: 20,
        step: 1,
        value: 20,
        change : function(e, slider){
            $('#sliderAppendNumCh').empty();
            var getSliderVal = document.getElementById('sliderValue').value = sliderValue;

            $('#sliderAppendNumCh').append(
            <div class=\"form-group\" style=\"width:100%;margin:0 auto;\">
                ...
            </div>);

        },
        slide : function(e , slider){
            $('#number_of_chapters').val(slider.value);
        },
    });     

我现在的问题是如何将每张幻灯片上的 slider 值发布到我的 Laravel Controller 。

我尝试过这个:

        $.ajax({
            type: 'POST',
            url: "{{Route('getAjaxRequest')}}",
            headers: {'X-Requested-With': 'XMLHttpRequest'},
            data: {value: getSliderVal},
            success: function (option) {
                console.log(getSliderVal);
            }
        });

路线:

Route::post('create', ['as' => 'getAjaxRequest', 'uses' => 'ProductController@getAjaxRequest']);

在我的 Controller 中,我尝试调用并返回如下值:

public function getAjaxRequest()
{
    $value =  Request::get('value');
    return view('productRom.edit')->with('value', $value);
}

所以基本上我想获取 slider 值,然后将该值返回到 php 函数,以便在循环中使用该值。

我不习惯 Ajax,因此不确定我做错了什么。

编辑 我尝试了何塞·罗哈斯的建议:

public function getAjaxRequest()
{
    $value =  Request::get('value');
    //do your stuff
    return $slideValue;
}

我在控制台中收到以下错误:

http://localhost/myapp/public/product/edit/%7BproductID%7D 500 (Internal Server Error)

实际网址是:

http://localhost/myapp/public/product/edit/51

编辑

这是我的路线:

Route::get('edit/{productID}', ['as' => 'editProduct', 'uses' => 'ProductController@editProduct']);

最佳答案

如果我理解得很好,您想要获取幻灯片的值,因此 Controller 中的方法返回 View 应该返回幻灯片的值,如下所示:

public function getAjaxRequest($productID)
{
    $value =  Request::get('value');
    //do your stuff
    return $slideValue;
}

然后,在接收该值的方法中,您可以使用该值执行您想要的操作。使用 AJAX 的目标是加载网页的部分内容,而无需重新加载整个网页。

关于javascript - Laravel Jquery Ui Ajax 发布到 Controller 并为 Blade 获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38374795/

相关文章:

javascript - 如何断言在我的 Jasmine 测试中调用了一个方法

javascript - React根组件不会加载整个index.html

javascript - 使用 Knockout 更改单选按钮时设置复选框

javascript仅重定向PC用户而不是移动用户

javascript - 如何获取自定义 React Babel pragma 将字符串作为参数而不是函数传递

javascript - 触发 jQuery 的悬停()在 anchor 上显示包含 LI 内的下拉菜单?

php - MySQL 和 PHP unicode 问题

php - 为 hmvc 结构使用 nginx 的 Codeigniter 设置

javascript - Mysql 查询返回 null

javascript - jQuery 对话框不调整 div 中内容的大小