Ajax Laravel 返回视图 500 错误

2023-12-09

我通过 Ajax 将幻灯片(Jquery Ui Slider)中的每个滑块值获取到我的控制器。

Slider + Ajax 看起来像这样:

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

            $.ajaxSetup({
                headers: {
                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                }
            });
            $.ajax({
                type: 'post',
                url: "{{ Route('editProductPost', $product->id) }}",
                headers: {
                    'X-Requested-With': 'XMLHttpRequest'
                },
                data: {
                    value: getSliderVal,
                    productId : getPrId
                },
                success: function (option) {
                    console.log(getSliderVal);
                }
            });
        },
    });

因此我脑子里确实有这个:

<meta name="csrf-token" content="{{ csrf_token() }}">

我的路线如下:

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

在我的控制器方法中,我这样称呼它:

public function editProductPost(Request $request)
{
    $sliderValue = $request->get('value');
    Log::info($sliderValue);

    return view('productRom.edit', [
        'sliderValue' => $sliderValue
    ]);
}

Log::info($sliderValue) 告诉我,我确实在每张幻灯片上获得了正确的滑块值。

当我尝试返回到编辑视图时,我在控制台中收到此错误:

POST http://localhost/myApp/public/product/edit/73500(内部 服务器错误)

我该如何解决这个问题?

Edit

因为我认为有这一行:

<form action="{{ route($route) }}"...>

未定义路由变量,因此我将其添加到返回语句中。

return view('productRom.edit', [
    'sliderValue' => $sliderValue,
    'route' => 'editProductPost'
]);

错误消失了,但是当我尝试访问时$sliderValue像这样的变量:

<p>{{ isset($sliderValue) ? $sliderValue : "nothing" }}</p>

它打印了我nothing

Edit

控制器:

    public function editProductPost(Request $request)
    {

        return response()->json([
            'sliderValue' => $request->get('value')
        ]);
   }

视图(ajax):

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });
        $.ajax({
            type: 'post',
            url: "{{ Route('editProductPost', $product->id) }}",
            headers: {
                'X-Requested-With': 'XMLHttpRequest'
            },
            data: {
                value: getSliderVal,
                productId : getPrId
            },
            success: function (response) {
                // check it has some data
                if (response.length) {
                    // spit it out
                    console.log(response);
                } else {
                    console.log('nothing returned');
                }
            }
        });

您的控制器方法应如下所示:

public function editProductPost(Request $request)
{
    return response()->json([
        'sliderValue' => $request->get('value')
    ]);
}

您不应该返回 ajax 请求的视图。

你的 ajax 成功方法应该如下所示(例如):

// first arg is the data returned by the controller method
success: function (response) {
    console.log(response);
}

它应该输出如下内容:

{
    'sliderValue': 4
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ajax Laravel 返回视图 500 错误 的相关文章

随机推荐

  • 函数隐藏和重载的区别

    我找不到函数隐藏和重载之间的任何区别 由于函数隐藏是派生类中存在的函数并隐藏基类的函数 两者的函数名称相同 重载 派生类和基类具有相同的名称但不同的签名 class A void print int class B public A voi
  • ant build 中使用 aapt 进行紧缩/资源打包使用其他项目的缓存

    我有两个使用通用库的 Android 应用程序 每个项目都为启动屏幕和其他一些项目定义了自己的背景图像 这些图像在两个应用程序中具有相同的名称 当我从 Eclipse 构建 运行时 每个应用程序都使用正确的背景图像 但是 当我运行 ant
  • jqueryposition() 在 safari 和 chrome 中无法正常工作

    我以前曾见过这个问题一两次 但从未有过适用于我的问题的答案 据我所知 我有一个单击链接时出现的工具提示 我根据链接的位置设置工具提示的位置 如下所示 tooltip css left this position left 这在 FF IE
  • 比较两个数组并用第三个数组中的值替换重复项

    var array1 a b c d var array2 a v n d i f var array3 1 2 3 4 5 6 刚开始学习Javascript 我不知道如何比较array2给那些在array1如果是这样 请将其替换为相应的
  • 一个简单的 SQL Select 查询来抓取社交图中所有有联系的人?

    爬取社交图谱的最短或最快的 SQL 选择查询或 SQL 过程是什么 想象一下我们有这张表 UId FriendId 1 2 2 1 2 4 1 3 5 7 7 5 7 8 5 9 9 7 我们这里有两个人 我正在谈论一个 sql 查询或过程
  • 嵌入式 Python 无法使用 NumPy 指向 Python35.zip - 如何修复?

    好的 这是来自 Python 网站的基本示例 用于简单说明runpy exe运行下面的 Python 脚本 引用 Python 包含并链接到后 在 x64 Windows 上使用 Visual Studio 2015 可以正常工作pytho
  • Spring Data mongodb-复制集合

    我将 spring 数据与 mongodb 一起使用 我想使用代码而不是命令行将文档从一个集合复制到另一个集合 有没有办法在不循环所有文档并执行 插入 的情况下执行此操作 除非像这样的命令一样使用它 mongoTemplate execut
  • 错误:超时间隔必须小于 2^32-2。参数名称: dueTm

    我的班级模型中有一对多关系 例子 单个角色可以附加多个权限 因此有两张表 一张来自角色 一张用于每个角色的权限 现在我有一个角色类 该角色类又具有作为该类成员的权限列表 当我需要进行更新时 我实例化一个transactionscope对象
  • 将文本添加到 div(或其他元素)的底部 - 模拟聊天控制台

    我有一个 div 应该在文本输入到输入框中时收集文本 现在它只是重现输入 但稍后它应该产生半智能响应 我希望文本出现在 div 的底部 渐变的暗端 我希望新文本始终位于底部 旧文本始终位于上部滚动区域的灰色区域 In other words
  • WPF 样式设置器不工作

    我有一个包含组合框的自定义用户控件 我添加了一个 ComboBoxWidth 依赖属性 以允许开发人员根据需要设置宽度 使用样式设置器 我想将所有这些组合框的宽度设置为另一个用户控件上的相同值 以保持大小一致性 但是 它不起作用 如果我在每
  • 在 Visual Basic 2010 中使用变量字符串引用对象

    我的表单上有几组类似的对象 标签 进度条 Windows 上的 Visual Basic 2010 在我的代码中 我有包含数据的集合 需要将其推入每个集合的值 文本属性中 我想要一个类似于 PHP 的解决方案 因为我可以分配类似于以下的值
  • 导航回具有相同状态的搜索页面 (JavaScript)

    当用户单击搜索结果但随后返回主搜索页面时 如何使用 JavaScript 保留搜索页面的状态 e g HTML https startech enterprises github io docs guides data analytics
  • 反应环境变量.env返回未定义

    我正在构建一个 React 应用程序 我需要从我的 api 获取数据 现在我想将 api url 存储为环境变量 我有我的 env 文件 我安装了 dotenv 这是我的代码 process env API URL 返回未定义 import
  • 无法使用 [UIImage imageWithContentsOfFile:] 创建 UIImage 并且文件存在

    我google了这个问题 大多数使用了错误的方法 UIImage imageNamed 我不是 并且我确定该文件存在 以下代码在iOS8 1上运行 self cachePath NSSearchPathForDirectoriesInDom
  • 如何在 VBscript 中将字符串数组转换为变体数组?

    我在 vbscript 中使用一个函数 它返回一个变量字符串数组 JobIDs objDoc ConnectedSubmit objServer 问题是我无法从该数组中获取作业 ID 值 因为 vbscript 不处理类型变量 当我尝试对
  • Laravel 5 Entrust - 用户属于许多应用程序

    我在 Laravel 5 3 中使用 Entrust 包来管理用户角色和权限 它工作得很好 问题是我的users 属于许多人 apps 所以我需要检查角色和权限 并考虑到他们在每种情况下尝试在哪个应用程序中执行操作 由于 Entrust 不
  • 保存和加载数据 - CoreData

    我是 CoreData 的新手 在我的 iPhone 应用程序中我想知道如何保存一些文本 然后将其重新加载 但诀窍是 当 UIDatePicker 中的日期与我保存它时的日期相同时加载它 就像日历一样 Update 感谢您的回复 尤其是代码
  • 在 C# 中使用已知模式解析 Lisp S 表达式

    我正在使用一项以类似 Lisp 的 S 表达式字符串形式提供数据的服务 这些数据到达的速度又快又厚 我想尽快地处理它 最好是直接在字节流上 它只是单字节字符 而不进行任何回溯 这些字符串可能非常长 我不希望 GC 为整个消息分配字符串而造成
  • Xcode 6.0.1 命令 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc 失败,退出代码 1

    我在存档时收到此错误 命令 Applications Xcode app Contents Developer Toolchains XcodeDefault xctoolchain usr bin swiftc 失败 退出代码 1 怎么解
  • Ajax Laravel 返回视图 500 错误

    我通过 Ajax 将幻灯片 Jquery Ui Slider 中的每个滑块值获取到我的控制器 Slider Ajax 看起来像这样 sliderNumCh slider range min min 0 max 20 step 1 value