在表单提交时显示错误
Show error on form submit
我想使用 jQuery 显示错误,目前还没有错误检查,但我只是想了解有关 jQuery 的更多信息,但似乎无法正常工作。
所以,我想在按下提交按钮时显示错误。我尝试使用 jquery 将可见性设置为可见的 onclick 和不可见的,但它没有用。它显示了一秒钟,然后就消失了。我怎样才能让它显示在那里直到下一次按下提交按钮?
<form id="quick-register" action="">
Username: <input type="text" name="quick-username"> <br>
<span id="quick-user-wrong">Wrong Username (a-z, A-Z, 0-9)</span>
Password: <input type="password" name="quick-password"> <br>
<span id="quick-pass-wrong">Wrong Password</span>
Repeat Password: <input type="password" name="quick-password2"> <br>
<span id="quick-pass2-wrong">Password doesn't match</span>
E-mail: <input type="email" name="quick-email"> <br>
<span id="quick-email-wrong">Invalid E-mail Address</span>
<button id="quick-submit">Register</button>
</form>
jQuery
$(function () {
$("#quick-submit").one("click", function () {
$("#quick-user-wrong").css("visibility", "visible");
});
});
提交表单后页面会重新加载(除非您使用 AJAX)
由于这次重新加载,错误只显示了片刻。
在您的 jQuery 代码中
$("form").on('submit', function(evt){
//if form errors
evt.preventDefault();
//showerror
//else do nothing
});
这将阻止页面被提交,因此错误将被显示并保持显示
因此用户可以更改错误并再次单击提交按钮。
您可以创建一个将在表单提交时触发的事件侦听器,您可以取消并稍后提交。
$( "#quick-register" ).submit(function( e ) {
//cancel submission
e.preventDefault();
// .... your error handling/etc ...
if(noerror){
//submit form later
$(this).unbind("submit").submit();
}
});
目前的问题是正在提交表单。这会导致页面刷新,这就是为什么您只能看到 javascript 工作一小会儿。
我想使用 jQuery 显示错误,目前还没有错误检查,但我只是想了解有关 jQuery 的更多信息,但似乎无法正常工作。
所以,我想在按下提交按钮时显示错误。我尝试使用 jquery 将可见性设置为可见的 onclick 和不可见的,但它没有用。它显示了一秒钟,然后就消失了。我怎样才能让它显示在那里直到下一次按下提交按钮?
<form id="quick-register" action="">
Username: <input type="text" name="quick-username"> <br>
<span id="quick-user-wrong">Wrong Username (a-z, A-Z, 0-9)</span>
Password: <input type="password" name="quick-password"> <br>
<span id="quick-pass-wrong">Wrong Password</span>
Repeat Password: <input type="password" name="quick-password2"> <br>
<span id="quick-pass2-wrong">Password doesn't match</span>
E-mail: <input type="email" name="quick-email"> <br>
<span id="quick-email-wrong">Invalid E-mail Address</span>
<button id="quick-submit">Register</button>
</form>
jQuery
$(function () {
$("#quick-submit").one("click", function () {
$("#quick-user-wrong").css("visibility", "visible");
});
});
提交表单后页面会重新加载(除非您使用 AJAX) 由于这次重新加载,错误只显示了片刻。 在您的 jQuery 代码中
$("form").on('submit', function(evt){
//if form errors
evt.preventDefault();
//showerror
//else do nothing
});
这将阻止页面被提交,因此错误将被显示并保持显示
因此用户可以更改错误并再次单击提交按钮。
您可以创建一个将在表单提交时触发的事件侦听器,您可以取消并稍后提交。
$( "#quick-register" ).submit(function( e ) {
//cancel submission
e.preventDefault();
// .... your error handling/etc ...
if(noerror){
//submit form later
$(this).unbind("submit").submit();
}
});
目前的问题是正在提交表单。这会导致页面刷新,这就是为什么您只能看到 javascript 工作一小会儿。