[英]How not to submit form, then submit it?
我有帶有電子郵件輸入的表單,一個按鈕可以覆蓋它,當我單擊按鈕時,按鈕在輸入中滑動,因此您可以輸入電子郵件。 當您單擊按鈕時,它必須提交表格。
我該怎么做?
<form action="http://databox.createsend.com/t/d/s/itkkyu/" method="post" class="subscribe-form" accept-charset="utf-8">
<input id="fieldEmail" name="cm-itkkyu-itkkyu" class="input" type="email" placeholder="Your company email">
<button class="get-notified" type="submit">Get notified</button>
</form>
JS:
(function () {
var count = 0;
$('.subscribe-form button').click(function () {
$('.subscribe-form').submit(function(e) {
e.preventDefault();
count += 1;
});
if (count == 1) {
console.log('oj');
$('.subscribe-form').submit(function() {
});
}
});
})();
使用jQuery.one()
添加一個一次性事件處理程序,該事件處理程序將取消提交,然后使用jQuery.submit()
在完成所有操作后觸發jQuery.submit()
事件。
$('.subscribe-form').one('submit',function(e) {
e.preventDefault();
// do something
$(this).submit();
});
您可以使用此構造。 Submit方法將僅在第二次單擊時運行。
(function () {
var submit = false;
$('.subscribe-form button').click(function (e) {
if (!submit) {
e.preventDefault();
submit = true;
return;
}
});
})();
無需處理按鈕的單擊,只需處理Submit事件。 您要做的就是在希望它提交時不調用e.preventDefault()
。
(function () {
var count = 0;
$('.subscribe-form').submit(function(e) {
if (count < 1) {
e.preventDefault();
count += 1;
}
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.