Yii:如何重定向并转到页面上的特定元素

  • 本文关键字:元素 重定向 Yii php yii
  • 更新时间 :
  • 英文 :


我正在尝试重定向并转到新页面上的特定元素,如下所示:

http://192.168.0.49/x/y/index.php/admin/user/update/id/3#certificate
$this->redirect(array('update', 'id' => $certificate->user_id));

如何做到这一点?

您可以简单地创建不带片段部分的 url,然后手动附加它:

$url = Yii::app()->createUrl('update', ['id' => $certificate->user_id]);
$url .= "#certificate";
$this->redirect($url);

此代码的工作方式在读取代码时立即显而易见。除此之外,还有特定于 Yii 的解决方案:CUrlManager(负责构建 URL 的组件)也将#识别为参数。所以你可以写:

$url = Yii::app()->createUrl(
    'update',
    ['id' => $certificate->user_id, '#' => 'certificate']
);

这不能使用 redirect 来完成。解决方法是

$url = Yii::app()->createUrl('update', array('id' => $certificate->user_id, '#' => "certificate"));
$this->redirect($url);

最新更新