gpt4 book ai didi

ajax - laravel 中未捕获的 TypeError : FormData constructor: Argument 1 does not implement interface HTMLFormElement.

转载 作者:行者123 更新时间:2023-12-04 15:09:37 26 4
gpt4 key购买 nike

我的表单就像这个demo

resume

Q.1 我想将此表单转换为 ajax,但我的 ajax 代码似乎缺少某些内容。在提交时根本不做任何事情。

Q2。我还希望该函数在选择文件时触发更改,而不是等待提交。

Q3。我想在单击“下一步”按钮时进行。所有的表单保存并转到下一页。

我的剑

<form method="post" enctype="multipart/form-data" action="{{ route('update', auth()->id()) }}">
@csrf
@method('put')
<fieldset>
@include('Home.steps.step-1')
</fieldset>
<fieldset>
@include('Home.steps.step-2')
</fieldset>
<fieldset>
@include('Home.steps.step-3')
</fieldset>
<fieldset>
@include('Home.steps.step-4')
</fieldset>
<fieldset>
@include('Home.steps.step-5')
</fieldset>
<fieldset>
@include('Home.steps.step-6')
</fieldset>
</form>

js

$(document).ready(function (e) {
$('.btn-next').on('click',(function(e) {
e.preventDefault();
var formData = new FormData(this);

$.ajax({
type:'POST',
url: $(this).attr("{{ route('update', auth()->id()) }}"),
data:formData,
cache:false,
contentType: false,
processData: false,
success:function(data){
console.log("success");
console.log(data);
},
error: function(data){
console.log("error");
console.log(data);
}
});
}));
});

我在控制台中收到此错误。

error

Uncaught TypeError: FormData constructor: Argument 1 does not implement interface HTMLFormElement.

最佳答案

你需要给表单元素而不是按钮

var formData = new FormData($('#form-id'));

关于ajax - laravel 中未捕获的 TypeError : FormData constructor: Argument 1 does not implement interface HTMLFormElement.,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65450950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com