解雇模态后更改window.location.href

时间:2017-01-11 16:35:12

标签: javascript php jquery modal-dialog octobercms

遵循OctoberCMS指南我需要在用户尝试使用php变量(例如:www.foo.com/bar)到主页时重定向用户(例如:www.foo.com/?bar = 1 )如果找到变量,则打开模态。

我创建了bar.htm,它使用适当的变量重定向:

title = "bar"
url = "/bar"
layout = "default"
meta_title = ""
meta_description = ""
is_hidden = 0
==
<?php
function onStart() {
  header('Location:/?bar=1');
}
?>
==

然后在我的JS中(#submitBtn是发送表单的模式上的按钮)

$(document).ready(function(){
  if(window.location.href.indexOf('1') > -1) {
      $('#myModal').modal('show');
      $('#submitBtn').click(function() {
        window.location.href='/';
    })
  } 
});

所以这不起作用,它只是在一个恒定的循环中显示模态,并且永远不会移动到成功模态或更改href。这种形式在所有其他情况下都能正常运作,所以我不相信问题就在那里。

缩短的示例模态代码:

$('#myModal').on('show.bs.modal', function (event) {
    var newForm = $('#newFakeForm');
    var config = {
      submitBtn: $('#submitBtn'),
      contactModal: $('#myModal'),
      successModal: $('#successModal'),
    };

    initContactForm(newFakeForm, config);

    });

和我的HTML按钮关闭模态:

谢谢

1 个答案:

答案 0 :(得分:0)

如果你在JS上进行重定向怎么办? 只需监听hidden.bs.modal事件并在那里进行重定向。