【发布时间】:2019-10-17 12:12:32
【问题描述】:
我正在尝试使用 ajax 将 id 传递给我的控制器。
我想在 ajax URL 中使用 id var,但它不起作用。
我在哪里设置 ID
<input type="checkbox" class="form-control traite" data-id="{{ $conversation->id }}"></td>
jquery 函数
$(document).on('click', '.traite', function() {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
var id = $(this).data('id');
$.ajax({
url: "{{ route('traitements.change_traite_conversation', " + id + ") }}",
type:"POST",
dataType:"JSON",
data: {
"_token": "{{ csrf_token() }}",
"id" : id
},
success: function() {
console.log("Updated");
},
error: function(xhr) {
console.log(xhr.responseText); // this line will save you tons of hours while debugging
// do something here because of error
}
});
console.log("Error");
});
web.php
Route::post('conversation/{id}/traiter', 'TraitementController@change_traite_conversation')->name('traitements.change_traite_conversation');
我得到的错误
{
"message": "Undefined variable: id",
[...]
}
我不明白为什么我不能将我的 ID 传递给 ajax URL,我通常可以 console.log 它并且它正在工作!
【问题讨论】:
-
你的小胡子 (
{{ ... }}) 之间的所有内容都由 Laravel 解析,所以你不能在小胡子语法的中间附加你的 id(这是你的 js 代码的一部分)。您必须找到另一种方法来获取您的 id -
很高兴知道!谢谢,我现在正在尝试这样做
标签: javascript php ajax laravel