【发布时间】:2017-04-21 09:17:16
【问题描述】:
我有一个表单可以通过 laravel 中的 Ajax 发送请求
我的控制器的这个 sn-p 返回 null
use Illuminate\Http\Request;
class StatusController extends Controller {
public function postStatus(Request $request) {
if ($request->ajax()) {
dd($request->input('statusBody'));
然而,这会返回一个数组,其中 statusBody 作为键名,值为空
use Illuminate\Http\Request;
class StatusController extends Controller {
public function postStatus(Request $request) {
if ($request->ajax()) {
dd($request->input());
这是返回的结果
array:1 [▼
"This_is_a_sample_status" => null
]
而这终于返回正确的值
use Illuminate\Http\Request;
class StatusController extends Controller {
public function postStatus(Request $request) {
if ($request->ajax()) {
$val = $request->input('statusBody');
dd(array_search($val, $request->all()));
我的问题是:为什么会这样?
为什么$request->input('name') 没有按预期返回值?
更新:
这也是 成功 将想要的结果记录到控制台的 Ajax 功能
var statusBody = $('#statusBody').val();
$.ajax({
type: "POST",
url: 'status',
data: statusBody,
success: function(data){
console.log(statusBody);
}
});
【问题讨论】:
-
你能用 json/ajax 代码块更新问题吗?通常,我认为使用
$request->input('name');应该没问题 -
我已经更新了我的问题@AntonisTsimourtos,尽管我看不到它是如何关联的,只要它将数据传递给控制器并成功将所需结果记录到控制台
-
尝试将
data: statusBody,更改为data: statusBody.serialize(),。也许也可以添加dataType: 'json',
标签: php arrays laravel httprequest