闡述在Yii2上實現跳轉提示頁

2022-08-05 14:36:12 字數 1638 閱讀 8985

為了讓使用者有更加良好的體驗,在操作成功或者失敗後,來個提示並跳轉頁面,我就在yii2上實現了這一個效果。在寫這個跳轉提示頁的時候,找資料我發現網上關於這方面的中文資料真的很少,大家也都共享下吧!

1、使用者在操作成功或者失敗後,來個提示並跳轉頁面。

2、使用這種方式$this->success(),$this->error()呼叫(仿造yii2自帶 $this->render()載入頁面的方式)。

1、在控制器的基類controller.php裡邊增加兩個方法,這麼寫:

/**

* 通用成功跳轉

* @param unknown $url 成功後跳轉的url

* @param number $sec 自動跳轉秒數

* @return ambigous */

public function success($url= ,$sec = 3)

/*** 通用錯誤跳轉

* @param string $msg 錯誤提示資訊

* @param number $sec

* @return ambigous */

public function error($msg= '',$sec = 3)

2、在loginviewsbase的下面建立一個命名為msg.php的頁面,**如下:

<?php 

/* @var $this yii\web\view */

/* @var $name string */

/* @var $message string */

/* @var $exception exception */

use yii\helpers\html;

?>

<?php if(isset($errormessage)):?>

<?php echo '操作出錯啦!' ?>

<?php echo ''.$errormessage.'

';?>

<?php else:?>

恭喜!操作成功!

<?php endif;?>

該頁將在3秒後自動跳轉!

<?php if(isset($gotourl)):?>

">立即跳轉

<?php else:?>

<?php endif;?>

3、完成以上步驟之後就可以在login模組下的控制器裡邊直接呼叫了,呼叫方式如下:

成功的呼叫方式: return $this->success(['/site/login']);

失敗的呼叫方式: return $this->error('資料修改失敗!');

1、跳轉提示的js寫在如下我註釋的地方了,寫在那的話就不起作用了,得寫在外面才行。

<?php $this->beginblock('jump_js')?>

(function());

<?php

$this->endblock();

$this->registerjs($this->blocks['jump_js'],\yii\web\view::pos_end);?>

yii2跳轉提示頁的寫法:

本文**於:猿2048