【发布时间】:2018-06-01 03:29:21
【问题描述】:
我有一个 AJAX 帖子,我正在尝试修复,但由于输入中有大量复选框,我遇到了问题。
现在,说我有这个:
<input type="checkbox" name="billToEmail[]" value="email1@email.com">email1@email.com
<input type="checkbox" name="billToEmail[]" value="email2@email.com">email2@email.com
我有一个名为“发送通知”的按钮,它启动以下脚本:
<script>
$('.modal-footer').on('click', '.sendNotificationNow', function() {
$.ajax({
type:'POST',
url: '/shipments/sendNotifications',
data: {
'billTo': $('.billToEmail:checked').val(),
'shipTo': $('.shipToEmail:checked').val(),
'shipFrom': $('.shipFromEmail:checked').val(),
'_token': $('input[name=_token]').val(),
},
success: function(data) {
$('.errorTitle').addClass('hidden');
$('.errorContent').addClass('hidden');
if ((data.errors)) {
setTimeout(function () {
$('#sentNotifications').modal('show');
toastr.error('Validation error - Check your inputs!', 'Error Alert', {timeOut: 5000});
}, 500);
if (data.errors.title) {
$('.errorTitle').removeClass('hidden');
$('.errorTitle').text(data.errors.title);
}
if (data.errors.content) {
$('.errorContent').removeClass('hidden');
$('.errorContent').text(data.errors.content);
}
} else {
toastr.success('Successfully Sent Notifications!', 'Success Alert', {timeOut: 5000});
$('div.notificationssent').fadeOut();
$('div.notificationssent').load(url, function() {
$('div.notificationssent').fadeIn();
});
}
},
});
});
</script>
现在,我确定我的问题在顶部附近突然出现,我正在尝试将多个值“转换”为数据变量。我应该在 .val() 之外添加一些东西吗?
我还有几个像这样的字段需要处理多个复选框,但如果我可以单独为 billToEmail 获得一些帮助,我相信我可以解决其余的问题。
【问题讨论】:
-
在
.val()的 jQuery 文档中,它说“获取匹配元素集中第一个元素的当前值”。注意“第一个元素”。听起来你想要一个数组中的所有值,所以检查this question的答案
标签: javascript jquery ajax laravel laravel-5