Colorbox + Form,仅提交工作按Enter键(不是onclick)

时间:2015-10-26 13:12:20

标签: javascript jquery html css forms

我在登陆http://www.showstye.lu页面时集成了一个弹出窗口(最好在隐身窗口中看到由于Cookie重置)。在这个弹出窗口中,您有一个简报注册表单,它是页脚中可用的一个副本。

我不得不复制css以适应时事通讯弹出窗口以便正确设置样式,这很好,我正在使用Colorbox作为弹出窗口。

现在,当我点击提交按钮(S'Abonner)时,表单本身并没有正确触发提交。我总是得到一个错误的回复告诉我重新提交一个新的电子邮件地址。

然而,当我使用键盘笔划“Enter”而不是点击提交按钮时,简报形式本身在页脚中完全正常,并且也是如此。

我不理解为什么一个表单在页脚中起作用但相同的副本不起作用(仅使用Enter键),我查看了表单的样式/ JS / html,它们两者都是相同的。

如何解决此问题以便提交按钮成功运行?

<div style='display:none'>
<div id='subscribe_popup'>
<div id="spop_left">
    <div id="spop_top"></div>
    <div id="spop_sign">
        <div class="popbox">
          {% if theme.setting_newsletter %}
                <form id="formNewsletter" action="{{ 'account/newsletter' | url }}" method="post">
                <input type="hidden" name="key" value="{{ page.key }}" />
                <input type="email" name="email" id="formNewsletterEmail" value="" placeholder="{{ 'E-mail' | t }}"/>
                  <a class="btn glyphicon glyphicon-send" href="#" onclick="$('#formNewsletter').submit(); return false;" title="{{ 'Subscribe' | t }}" {% if shop.language == 'de' %}style="padding: 0px 10px;"{% endif %}><span>{{ 'Subscribe' | t }}</span></a>
              </form>
        </div> {% endif %}
     </div>
     </div>
    <div id="spop_right"></div>


   </div>
   </div> 
  <!-- END subscribe popup-->

这是背后的JS:

    <script> // popup script 
    $("document").ready(function (){ 
   // load the overlay
    if (document.cookie.indexOf('visited=true') == -1) {
  var fifteenDays = 1000*60*60*24*15;
  var expires = new Date((new Date()).valueOf() + fifteenDays);
  document.cookie = "visited=true;expires=" + expires.toUTCString();
  $.colorbox({width:"553px", inline:true, href:"#subscribe_popup"});
}
  $(".open_popup").colorbox({width:"553px", inline:true, href:"#subscribe_popup"});

     });
    </script>

1 个答案:

答案 0 :(得分:0)

好吧就是这样,我正在将提交集成到超链接而不是使用简单的inputtype提交,按键显然是有效的,因为浏览器会自动识别按键输入作为提交!