Javascript laravel中向ajax请求传递数组的问题
我试图通过ajax请求传递数组Javascript laravel中向ajax请求传递数组的问题,javascript,ajax,laravel-5,Javascript,Ajax,Laravel 5,我试图通过ajax请求传递数组 <input type="text" name="item_name[]"> <input type="text" name="address"> $(document).on('click', '#save_info', function () { var address = $("#address").val(); var item_name = $("[name^='item_name']");
<input type="text" name="item_name[]">
<input type="text" name="address">
$(document).on('click', '#save_info', function () {
var address = $("#address").val();
var item_name = $("[name^='item_name']");
$.ajax({
url: '/save_information',
dataType: "json",
type: 'POST',
data: {
_token: '{{ csrf_token() }}',
address: address,
item_name: item_name,
}
});
});
它会出错。如何使用循环保存数组值。提前感谢变量项_name保存DOM节点,而不是输入值。您必须将其设置为
var item_name=$(“[name^='item_name']”)。val()
或var item_name=$(“[name^='item_name']”)。value
@Mujahidur Rahman Mithun IUB您可以使用serializeArray
更快地编写它
$(document).on('click', '#save_info', function () {
var serializeData = $("[name^='item_name']").serializeArray();
serializeData.push(
{
name: "address", value: $("#address").val()
},
{
name: "_token", value: '{{ csrf_token() }}'
},
);
$.ajax({
url: '/save_information',
dataType: "json",
type: 'POST',
data: serializeData
});
});
或者,如果使用
,则可以使用很少的行代码:
$(document).on('click', '#save_info', function () {
$.ajax({
url: '/save_information',
dataType: "json",
type: 'POST',
data: $('form#myform').serialize(),
});
});
`
使用
$(“[name^='item\u name']”)val()
而不仅仅是$(“[name^='item\u name']”)谢谢您的反馈,但它仍然说count():参数必须是实现Countable@MujahidurRahmanMithunIUB您是否有多个输入与此选择器匹配?如果没有,您只需使用var item_name=[$(“[name^='item_name']”)val()代码>var item_name=[$(“[name^='item_name']”)val();我使用了这个,但它只包含一个值。第一value@MujahidurRahmanMithunIUB这就是为什么我问您是否有多个元素与选择器匹配,因为解决方案将不同。在这种情况下,您必须使用类似var item_name=$(“[name^='item_name']”)的东西。map(function(){return$(this).val()).get()
$(document).on('click', '#save_info', function () {
$.ajax({
url: '/save_information',
dataType: "json",
type: 'POST',
data: $('form#myform').serialize(),
});
});
`