这是我的代码
视图
<div class="modal fade"id="myModal2" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Declare New Property?</h4>
</div>
<div class="modal-body Content">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Yes</button>
<button type="button" class="btn btn-default" data-dismiss="modal">No</button>
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
我要创建控制器,因为我的侧边栏在控制器中具有默认的href。
答案 0 :(得分:1)
您不能通过Codeigniter的控制器“调用” /启动myModal2。 CI中的Controller只是以可以与URI关联的方式命名的类,其每个方法都指向页面的入口点。单击“ href”会将您的浏览器重定向到URI,但不会,也不会像您期望的那样触发模式。
您将需要javascript / jQuery来启动模式。我假设上面的HTML和菜单HTML存储在 Codeigniter视图文件中,由控制器加载,并且您正在使用 Bootstrap Modal 。以下是在jQuery中触发模式的两种方法(请记住要加载jQuery)。
#1单击链接(show_modal)以启动模态
<!-- assuming the link html in menu, the same link you wrote to redirect users to the controller method-->
<a id='the-link-id'>Fire Modal</a>
<!-- jQuery code to fire modal-->
$(function(){
$(document).on(".click","#the-link-id",function(e){
e.preventDefault();
$("#myModal2").modal('toggle');
});
})
#2将用户重定向到控制器方法(show_mdal),该方法将加载包含模式的视图文件并在加载视图时将其触发。
<!-- jQuery code to fire modal when the view file is loaded-->
$(function(){
$(document).ready(function(){
$("#myModal2").modal('toggle');
});
})
恕我直言,第二种方式似乎很像你想要的;但是从UX角度来看很奇怪。
我希望这会有所帮助。