javascript - 如何使用 ajax 将多个返回值传递给 laravel 控制器
问题描述
我不想使用具有多个返回值的 ajax 将多个变量传递给 laravel 控制器。
JavaScript
$(function(){
var standard = standardRoom();
var n_standard = standard[0];
var xSumStandard = standard[1];
var totalStandard = standard[2];
var quad = quadRoom();
var n_quad = quad[0];
var xSumQuad = quad[1];
var totalQuad = quad[2];
var family = familyRoom();
var n_family = family[0];
var xSumFamily = family[1];
var totalFamily = family[2];
var barkada = barkadaRoom();
var n_barkada = barkada[0];
var xSumBarkada = barkada[1];
var totalBarkada = barkada[2];
$('#formSubmit').on('click', function(){
$.ajax({
url: APP.baseUrl + '/check/next',
data: {'_token': window.Laravel.csrfToken, 'n_standard': n_standard, 'xSumStandard': xSumStandard, 'totalStandard': totalStandard,'n_quad': n_quad,'xSumQuad': xSumQuad,'totalQuad': totalQuad,'n_family': n_family,'xSumFamily': xSumFamily,'totalFamily': totalFamily, 'n_barkada': n_barkada,'xSumBarkada': xSumBarkada,'totalBarkada': totalBarkada},
type: 'POST',
success: function (data) {
console.log('Success')
},
});
});
});
{!! Form::open(['url' => '/request', 'id' => 'formSubmit']) !!}
<input type="submit" id="submitbutton" value="NEXT" style="width:310px;background-color:#5d0b0b">
{!! Form::close() !!}
我尝试按照有关如何在堆栈中访问多个返回值的说明进行操作并想出这个。我不知道这是否有效。但我需要的是传递数据中的所有值:
路线
Route::post('check/next', 'Reservation@getRequest');
现在下一步是什么?我如何在控制器中得到这个?我是 laravel 和 ajax 的新手,所以我很难理解这个过程问题是我得到了一个未定义的索引:n_standard 编辑
控制器
public function getRequest(Request $request){
$n_standard = $_GET['n_standard'];
$xSumStandard = $_GET['xSumStandard'];
$totalStandard = $_GET['totalStandard'];
$n_quad = $_GET['n_quad'];
$xSumQuad = $_GET['xSumQuad'];
$totalQuad = $_GET['totalQuad'];
$n_family = $_GET['n_family'];
$xSumFamily = $_GET['xSumFamily'];
$totalFamily = $_GET['totalFamily'];
$n_barkada = $_GET['n_barkada'];
$xSumBarkada = $_GET['xSumBarkada'];
$totalBarkada = $_GET['totalBarkada'];
}
解决方案
在控制器中,首先您应该将$_GET替换为$_POST / $_REQUEST因为您正在通过POST从 ajax 发送数据。
或者
您还可以使用下面给定的代码检查您是否正在获取请求值。
use Illuminate\Support\Facades\Request;
public function getRequest(Request $request){
$request->all()
}
推荐阅读
- android - Proguard和R8有什么区别?
- c# - 从“System.DateTime”到“System.DateTimeOffset”的无效转换
- java - 遍历 JSON 对象列表
- c# - C# 中的“public ClassName this[AnEnumType key]”是什么意思?
- google-bigquery - 使用 Google Cloud Data Fusion 执行自定义 SQL 查询
- node.js - 检索数据后关闭 MongoDB 连接
- asp.net-mvc - 检索 DateTime 对象时出现 ActionResult 异常
- react-redux - 如何做 redux-saga 结合测试和 jest 和酶
- conv-neural-network - 带有水印图像的 CNN 对象检测和训练,它会起作用吗?
- php - 如何从同一浏览器将一个域的相同 cookie 收集到另一个域?