在打开bootstrap模式之前重定向到另一个页面

时间:2017-01-27 17:45:25

标签: javascript twitter-bootstrap

我有一个按钮,我在其中放置了以下代码:

<a href="#thread_add_modal" class="btn btn-primary" id="thread_add_id" data-toggle="modal">New Thread</a>

任何人都可以在登录后创建线程。没有登录,我就无法允许用户创建线程。

Javascript:

$("#thread_add_id").click(function(){
         var login = "<?php echo $this->session->userdata('login')?>";
         if(login == false){
             window.location.href = "<?php echo base_url()?>login/";
         }


     });

问题:

当我试图单击新线程而没有登录时,第一次打开弹出窗口然后重定向到登录页面。
 我不希望在登录前显示该弹出窗口。

为了这个目的,我已经像上面那样做了。但它对我不起作用。 所以任何想法,任何建议。

2 个答案:

答案 0 :(得分:0)

首先从锚标记中删除<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> <div class="circle"> <div class="drop"> Drop Me<br> Outside </div> </div>并添加类data-toggle="modal"我们将在点击jquery事件时打开模式,请参阅下面的代码片段我刚刚通过clsmodal来使这个小提琴工作你只需将你的PHP代码放在那里,如果登录是真的,模式弹出将显示,否则它将重定向

var login = true;
jQuery(document).ready(function(e) {
  $(".clsmodal").on("click", function() {
      var login = true;
      if (login == false) {
        window.location.href = "<?php echo base_url()?>login/";
      } else {
      $('#myModal').modal('show');
      }
	});
});

答案 1 :(得分:0)

1)从按钮中删除Bootstrap属性

<a  class="btn btn-primary" id="thread_add_id" >New Thread</a>

2 检测用户是否记录而不是重定向。否则,请参考您的模态以显示$('#thread_add_modal').modal('show');

$("#thread_add_id").click(function(){
   var login = "<?php echo $this->session->userdata('login')?>";
   if(login == false){
       window.location.href = "<?php echo base_url()?>login/";
   }
   else{
       $('#thread_add_modal').modal('show'); 
   }

});