我想做一个ajax请求来更新项目的状态,但是对于一个或多个所选项目。
那么如何发布所有选中的复选框项目以在句柄页面上处理它?
以下是我使用的一些代码。但它只会将一个item
发布到流程页面。
<td>
<input type="checkbox" class="select-all" name="item[]" id="item[78]">
</td>
<td>
<input type="checkbox" class="select-all" name="item[]" id="item[182]">
</td>
和javascript
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': "{{ csrf_token() }}}"
}
});
var formData = {
item: $('input[name=item\\[\\]]').val(),
}
var type = "POST";
var my_url = "/posturl";
$.ajax({
type: type,
url: my_url,
data: formData,
success: function (data) {
console.log(formData);
console.log(data);
},
error: function (data) {
console.log('Error:', data);
}
});
答案 0 :(得分:1)
form
标记中(所有输入字段都在一个表单中)。var formData
代码:
<form id="form-name">
<tr>
<td>
<input type="checkbox" name="item[1]">
</td>
</tr>
<tr>
<td>
<input type="checkbox" name="item[32]">
</td>
</tr>
</form>
使用Javascript:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': "{{ csrf_token() }}}"
}
});
var formData = $('#form').serializeArray();
var type = "POST";
var my_url = "/posturl";
$.ajax({
type: type,
url: my_url,
data: formData,
success: function (data) {
console.log(formData);
},
error: function (data) {
console.log('Error:', data);
}
});
答案 1 :(得分:0)
我以不同的方式做同样的事情。
我有复选框列表,名字包含他们的ID。
<input type="checkbox" class="bulkChecked" name="{{$value->id}}">
在你的事件处理程序里面
var ids = [];
$(".bulkChecked:checked").each(function () {
ids.push($(this).attr("name"));
});
所以此时你已经有了复选框的ID。不,你可以通过&#39; ids&#39;使用ajax调用的数组