我正在尝试将eric martin的simplemodal实现到我的Codeigniter项目中。到目前为止,我所能做到的就是给我一个在Firebug中找不到的404页面。我正在使用模式提醒用户他们正从我的站点重定向到第三方网站。我从我的链接href中获取url以用作模式中的链接,以便用户可以继续。
我的想法是Jquery会抓住/ depart /并使用适当的控制器并将正确的视图加载到模态中。它似乎没有那样工作。 Firebug将响应显示为404.我尝试将自定义路由添加到路径文件以处理许多不同的链接可能性,但这没有任何效果。我该怎么接近这个?
Jquery的
var OSX = {
container: null,
init: function () {
$('.depart').click(function (e) {
e.preventDefault();
var myid = $(this).attr('href');
$.get("/depart/" + encodeURIComponent(myid), function(data){
$(data).modal({
opacity: 65,
overlayClose: true,
onOpen: OSX.open
});
});
});
},
open: function (d) {
var self = this;
self.container = d.container[0];
d.overlay.fadeIn('slow', function () {
$("#depart", self.container).show();
d.container.fadeIn('slow', function () {
d.data.fadeIn('slow');
});
});
}
};
OSX.init();
});
链接
a class="depart" href="http://www.newwebsite.com"
答案 0 :(得分:0)
以下是我在所有我的codeigniter项目https://github.com/sirfilip/ci/blob/master/assets/js/init.js中使用的内容。我只需通过javascript访问网址,就像我使用codeiniger一样。意思是如果我想访问控制器和动作我做url:CI.site_url('controller / action')如果我想访问基本URL我做CI.base_url('某些图像的路径')。像魅力一样。
答案 1 :(得分:0)
所以,这就是我提出的似乎有效的方法。我更新了jQuery .get以包含url =参数。然后让Codeigniter在控制器中获取该变量。如果设置了变量并且数据库中存在链接,则用户可以通过单击链接继续退出该站点。
的jQuery
$.get("/depart/?url=" + encodeURIComponent(myid), function(data){
控制器索引方法
$url = $this->input->get('url');
$this->data['continue'] = isset($url]) && $this->links_model->check_link($url) == TRUE ? '<a href="'.$url.'">Continue</a>' : '<a href="">Continue</a>';
这个stackoverflow问题帮助我找到了自己的方式, Passing URL in Codeigniter URL segment