javascript - 表单提交成功时如何使用onSuccess()?
问题描述
实际上我想要,当成功提交我的表单时,然后显示一条消息。
但现在总是显示消息。想,当表单提交成功。如果未成功提交,则不显示该消息。
如何知道表单提交成功与否?怎么做?
这是我的代码:
$(document).ready(function() {
$("#snoAlertBox").fadeIn();
closeSnoAlertBox();
});
function closeSnoAlertBox() {
window.setTimeout(function() {
$("#snoAlertBox").fadeOut(200000)
}, 3000);
};
#snoAlertBox {
position: absolute;
z-index: 1400;
top: 2%;
right: 4%;
margin: 0px auto;
text-align: center;
display: none;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div style="padding:20px;">
<form action="">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname" value="John"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname" value="Doe"><br><br>
<input type="submit" value="Submit">
</form>
</div>
<div id="snoAlertBox" class="alert alert-success" data-alert="alert">Now Update your Search</div>
请帮忙!谢谢你。
解决方案
什么决定表单是否提交成功?我没有看到任何验证或向服务器发送数据。无论如何,您可以将事件侦听器附加到您的表单,但首先,您需要为其添加一个 id,以便可以通过 js 轻松访问它。
例子:
<form action="" id="myForm">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname" value="John"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname" value="Doe"><br><br>
<input type="submit" value="Submit">
</form>
const form = document.getElementById("myForm");
form.addEventListener("submit", (event) => {
event.preventDefault();
// here you can show something on submit or do whatever you want
});
推荐阅读
- angular - Angular 8 + 国际化在 AOT 模式下不起作用
- typescript - 不能在打字稿中的联合类型上使用 instanceof
- sql - 语法来解析数据并使用它来标记它到 SQL Server 中的一个新类别?
- python - Python获取mongo集合的字段类型
- jwt - 如何从公钥/私钥对创建 RsaSecurityKey
- python - 如何从 BeautifulSoup 列表中匹配包含字符串的元素?
- ios - {已解决} iOS / Swift:以编程方式调整 WKWebview 的高度
- ms-word - 如何在我的word文档中添加空白页?
- ios - 是否可以检测到 iOS 设备上的密码何时被修改?
- sql - 创建一个循环以基于月份标记日期,而不使用许多多个“案例”、“之间”