【问题标题】:Cakephp: Redirecting to particular div in the view.Cakephp:重定向到视图中的特定 div。
【发布时间】:2014-12-22 23:54:42
【问题描述】:

我的导航位于默认布局的标题中。我正在尝试设置一个导航按钮以重定向到主页上的特定 div ()。 我有这个,它不起作用:

<li> <?php
echo $this->Html->link(
'ABOUT',
array('controller'=>'pages', 'action'=>'display','home'),
array('id' => 'about_page'),
array('escape' => FALSE)); ?> </li>

这个页面控制器只接受参数并重定向到特定页面。它看起来像这样:

public function display() {
    $path = func_get_args();
            $page = $path[0];


                $count = count($path);
                if (!$count) {
                        return $this->redirect('/');
                }
                $page = $subpage = $title_for_layout = null;

                if (!empty($path[0])) {
                        $page = $path[0];
                }
                if (!empty($path[1])) {
                        $subpage = $path[1];
                }
                if (!empty($path[$count - 1])) {
                        $title_for_layout = Inflector::humanize($path[$count - 1]);
                }
                $this->set(compact('page', 'subpage', 'title_for_layout'));

                try {
                        $this->render(implode('/', $path));
                } catch (MissingViewException $e) {
                        if (Configure::read('debug')) {
                                throw $e;
                        }
                        throw new NotFoundException();
                }

} 

有人可以帮帮我吗?使用渲染或重定向方法可能更容易重定向吗?

【问题讨论】:

    标签: cakephp redirect hyperlink render helpers


    【解决方案1】:

    如果我理解正确,你唯一需要做的就是

    <li> <?php
    echo $this->Html->link(
    'ABOUT',
    array('controller'=>'pages', 'action'=>'display','home', '#' => 'about_page'),
    array('escape' => FALSE)); ?> </li>
    

    您只需将“#”添加到您的数组而不是 id。

    编辑

    <li> <?php
    echo $this->Html->link(
    'ABOUT',
    array('controller'=>'pages', 'action'=>'display','home', '#' => 'about_page', 'escape' => FALSE)); ?> </li>
    

    第四个参数是confirmMessage,不是我上面写的转义选项。

    【讨论】:

    • 由于某种原因,小对话框显示“本地主机上的页面说:对象对象”,然后将我重定向到主页,但没有转到 'about_page' div。跨度>
    • 越来越好了,不显示消息框,但仍然只是重定向到主页,而不是到about_page div
    • 如果上述命令的输出是http://myapp/pages/display/home#about_page,那么问题一定出在你主页的html中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-02
    • 1970-01-01
    • 2011-05-05
    相关资源
    最近更新 更多