我在视图文件夹中有很多视图,例如视图/管理文件夹中的视图。

当我编码
if (!empty($users->users)):
foreach ($users->users as $user) {
$link = site_url('ContentController/showActivities/' . $user->id);
$what = $user->banned == 0 ? 'b':'u';
$banned_t = $user->banned == 0 ? 'Banned':'Un-banned';
echo '<tr id="user_'.$user->id.'">';
echo '<td><div class="userimg"><img src="' . $user->profile_pic->medium . '"></div></td>';
echo '<td>'.$user->name . '</td>';
echo '<td>';
echo $user->last_login == '' ? 'never' : $user->last_login;
echo '</td>';
echo $user->banned == 0 ? '<td><span class="label label-success">Active</span></td>' : '<td><span class="label label-danger">Banned</span></td>';
echo '<td>'.$user->email.'</td>';
echo '<td><div class="btn-group">
<button type="button" onclick="Buckty.user.edit($(this));" data-toggle="modal" data-target="#editUser" data-id="'.$user->id.'" class="btn btn-danger">Edit</button>
<button type="button" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
<span class="caret"></span>
<span class="sr-only">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu" role="menu">
<li><a onclick="javascript:ref('.$user->id.')">Show Activities</a></li>
<li><a onclick="Buckty.user.ban($(this));" data-id="'.$user->user_hash.'" data-what="'.$what.'">'.$banned_t.'</a></li>
<li><a onclick="Buckty.user.remove($(this));" data-id="'.$user->id.'">Delete</a></li>
</ul>
</div></td>';
echo '</tr>';
}
endif;这就是我想重定向到控制器的代码
<li><a onclick="javascript:ref('.$user->id.')">Show Activities</a></li>Javascript:
function ref(id) {
window.open('ContentController/showActivities/'+id, '_blank');
}但是,当我单击“显示活动”菜单时,它总是重定向到http://localhost/file-sharing/admin/ContentController/showActivities/1,而不是重定向到ContentController/showActivities控制器。如果url是http://localhost/file-sharing/ContentController/showActivities/1,则应该重定向到该控制器。
有人知道在这种情况下我该怎么做吗?提前谢谢。
发布于 2016-10-19 07:40:22
本平台的Being Owner。让我帮你澄清几件事。由于功能和兼容性原因,base_url()或site_url()没有定义站点url。
首先,我不建议您不要使用控制器名称,尝试组织和为您的控制器在routes.php内的路线,但现在让我们谈谈您的问题。
site_url()是你当前的网址。但是您可以非常简单地访问所有的全局设置。
全局变量介绍
因此,根据您的问题,您应该使用$site->site_url而不是site_url();
基本上改变这一点:
$link = site_url('ContentController/showActivities/' . $user->id);到这个
$link = $site->site_url.'ContentController/showActivities/' . $user->id;或者,如果我们讨论javascript,那么javascript的全局变量也是存在的。您应该使用site_url作为站点链接,因此请编辑以下内容:
function ref(id) {
window.open('ContentController/showActivities/'+id, '_blank');
}到这个
function ref(id) {
window.location.replace(site_url + 'ContentController/showActivities/'+id, '_blank');
}下面介绍javascript的全局变量:
site_info \这包含站点设置数据。current_folder的哈希idcurrent_folder位于根文件夹,则为0;如果位于非功能视图,则为folder。
发布于 2016-10-19 07:33:25
试试这个:
function ref(id) {
window.open('<?php echo base_url()?>ContentController/showActivities/'+id, '_blank');
}https://stackoverflow.com/questions/40124135
复制相似问题