![](/img/trans.png)
[英]How to get formdata values sent by ajax post method in laravel controller
[英]Send array of values to controller using FormData Laravel
我有一个表格,从中我可以从最终用户那里获得营业时间和关闭时间。 用户可以输入多个开放时间和关闭时间的值。 问题是我只得到数组中的第一个时间值,而不是所有输入的值。 如何使用 Formdata 将值数组发送到我的控制器?
刀刃
<form>
<input name="closing_time[]" id="closing_time" placeholder="18:00" />
.......
</form>
JavaScript
.....
formData.append("closing_time[]", document.getElementById('closing_time[]').value);
.....
控制器
$closing_time = $request->input('closing_time');
dump($opening_time,$closing_time);
您正在通过 id 获取元素,而您只有一个 html 元素。
formData.append("closing_time[]", document.getElementById('closing_time[]').value);
按类名获取元素遍历元素并获取值还将这些值存储在 javascript 数组中,然后将其附加到 formData
根据HTML 规范, ID
属性在页面中应该是唯一的:
此属性为元素分配名称。 此名称在文档中必须是唯一的。
如果您有多个具有相同 ID 的元素,则您的 HTML 无效。
因此, getElementById()
仅返回单个元素。 你不能让它返回多个元素。
有几个相关的函数将返回一个元素数组 - getElementsByName
或getElementsByClassName
可能更适合您的要求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.