【发布时间】:2018-09-17 11:32:19
【问题描述】:
我正在尝试使用 formspree 提交表单,但出现两个不同的错误。当我在刷新页面后尝试提交表单时,我在新页面上收到错误提示
无法发布/联系
当我返回并尝试再次提交表单时,控制台中出现错误提示:
POST https://formspree.io/sheabathandbody@mail.com400 () jquery.min.js:4
发送@jquery.min.js:4
ajax@jquery.min.js:4
(匿名)@main.js:8
调度@jquery.min.js:3
r.handle@jquery.min.js:3
我之前使用过这个方法/代码来提交我的表单,所以我不知道问题可能是什么
Contact.vue 表单
<form id="contact" name="contact-form" method="post" action = "">
<fieldset>
<input placeholder="Your name" name="name" type="text" id="name" tabindex="1" required="required">
</fieldset>
<fieldset>
<input placeholder="Your Email Address" name="email" id="email" type="email" tabindex="2" required="required">
</fieldset>
<fieldset>
<input placeholder="Your Phone Number (optional)" type="tel" tabindex="3">
</fieldset>
<fieldset>
<textarea placeholder="Type your message here...." tabindex="5" name="message" id="message" required="required"></textarea>
</fieldset>
<fieldset>
<button name="submit" type="submit" id="submit_btn" >Submit</button>
</fieldset>
</form>
这是我的 main.js
(function($) {
$(window).on("load", function() {
// Contact form
var form = $("#contact");
form.submit(function(event) {
event.preventDefault();
var form_status = $('<div class="form_status"></div>');
$.ajax({
url: "https://formspree.io/sheabathandbody@mail.com",
method: "POST",
data: $(this).serialize(),
dataType: "json",
beforeSend: function() {
form.prepend(
form_status
.html(
'<p><i class="fa fa-spinner fa-spin"></i> Email is sending...</p>'
)
.fadeIn()
);
}
}).done(function(data) {
form_status
.html(
'<p class="text-success">Thank you for contacting us. We will be in touch.</p>'
)
.delay(3000)
.fadeOut();
});
});
});
})(jQuery);
【问题讨论】:
标签: javascript jquery ajax forms vue.js