提交时打开灯箱.如果灯箱关闭,提交表单.如果链接被点击,不要提交
On submit open lightbox. If lightbox closed, submit form. If link clicked, do not submit
我有一个类似的HTML表单:
<form id="cart-form">
<input type="text" name="quantity" />
<input type="hidden" name="sku" value="SKU123" />
<input type="submit" name="submit" value="Submit" />
</form>
我也有一个隐藏的div像这样:
<div id="cart-special-offers" style="display:none;"><p>Would you like to take a look at our <a href="/catalogue/category/543" class="ignore-form">current promotions</a>?</p>
<p><a href="/catalogue/category/543" class="ignore-form">Yes please</a></p>
<p><a href="#" class="fancybox-close-link">No thanks</a></p>
</div>
在提交表单时,我想在一个花哨的弹出窗口中显示隐藏的div(停止表单提交)。
如果用户选择查看特别优惠,则表单提交应完全取消,并应重定向用户。
如果用户选择关闭fancybox弹出框(通过任何方式),用户的表单应该现在被提交。
我目前拥有的JS是:
$('#cart-form').submit(function(){
$.fancybox.open([
{
href : '#cart-special-offers'
}
]);
return false;
});
$('.fancybox-close-link').click(function(){
$.fancybox.close();
$('#cart-form').submit();
});
这显然会导致循环,每次我试图关闭fancybox窗口而不查看特殊优惠时,都会显示该窗口。
我如何阻止这种情况的发生?
试试这样
$('#cart-form').submit(function (e)
{
$.fancybox.open([
{
href : '#cart-special-offers'
}
]);
return !!e.submit;
});
$('.fancybox-close-link').click(function(){
$.fancybox.close();
$('#cart-form').submit({
submit: true
});
});
这实际上是一种荒谬的做法。
我想要的是发布和进入一个页面,但是我有两个提交按钮。
我没有意识到的是,我可以隐藏一个提交按钮(display:none),在它触发灯箱的地方放一个锚,然后当点击灯箱上的关闭按钮时,它会触发点击隐藏的输入
相关文章:
- Jquery表单验证插件-如果选中复选框,如何在提交时执行某些操作
- 在php中提交数据时,如果某些值为null,而某些值为非null,如何进行查询
- 如果ng单击附加到提交按钮,则表单未验证
- 表单提交没有'如果为空,则不会显示错误消息
- AngularJS阻止提交如果输入没有't已验证
- 这个html代码可以自动提交吗(如果有单独的页面需要在提交后出现)
- 'Alajax' Jquery 简单表单提交.如果表单未经验证,如何防止提交
- 如果字段具有无效值,请禁用表单提交
- 在提交时检查正则表达式验证,如果为空,则聚焦所有输入字段
- 如何登'如果验证未通过,则不提交表单
- 如果文本字段不为空,则自动将表单提交到url
- 如果所有验证都是正确的,我如何提交我的表格
- 如果返回false,如何在提交时关闭引导模式
- 如果用户点击“;提交”;无需填写表格
- 如果表单仅通过JavaScript提交,则需要进行PHP验证
- 如果用户名不可用,jquery ajax将阻止表单提交
- OnlineExam中的countdowntimer随时间的流逝自动提交&通过AJAX&如果页面刷新,则
- 如果出现错误,请在表单提交中显示图像
- 如果输入空jquery,则禁用提交/发布按钮
- 如果从浏览器控制台提交,Knockoutjs不会保存数据