ThinkPHP5中,模板、控制器、JavaScript的url跳转重定向方法

本文详细介绍了ThinkPHP5框架中控制器的header()、url助手函数以及redirect、success和error方法进行页面跳转的方式,并对比了JavaScript中的location.href、window.history.back和window.open实现跳转的用法。同时,还展示了模板HTML中如何通过a标签和JavaScript进行跳转。这些方法在实际项目开发中非常实用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

php控制器中的跳转:

1. header()函数是PHP中进行页面跳转的一种十分简单的方法。主要功能是将HTTP协议标头(header)输出到浏览器。

 header("Location: https://www.baidu.com"); 
 exit();

2. tp5的助手函数 url();

      $url = url('module/controller/action');
/*      url:tp5的助手函数,用指定的模块、控制器、方法得到一个新的url
      还可以写成*/
      url('/module/controller/action');
      url('controller/action');
      url('action');

注:在tp的老版本是U()

3.tp5的三种跳转

    //正常跳转
    $this->redirect('module/controller/action');
    //成功跳转
    $this->success("操作成功",$url);
    //失败跳转
    $this->error("操作失败","module/controller/action");

和项目无关的跳转,一般用header()

JavaScript中的跳转

1, 普通跳转  location.href="https://www.baidu.com/";

<script type="text/javascript">
    function run(id){
        //此处和tp5的助手函数搭配使用
        location.href="{:url('table/index')}?id="+id;
        //两者同效,不加window会自动补齐
        //window.location.href="{:url('table/index')}?id="+id;
    }
</script>

2,页面的后退

<script language="javascript"> 
    alert("我要返回了"); 
    window.history.back(-1); 
</script> 

3,跳转(弹出新窗口)     window.open("https://www.cnblogs.com/cl94/");

<script type="text/javascript">
    function run(id){
        //弹出一张新页面,此方法还有其他参数,这里不再阐述
        window.open("https://www.cnblogs.com/cl94/");
    }
</script>
<script type="text/javascript">
    function run(id){
        //此处window.open和tp5的助手函数搭配使用
        var url = "{:url('table/index')}?id="+id;
        alert( url);
        window.open(url);
    }
</script>

模板HTML中的跳转

  a链接直接跳转

    

<a  href="https://www.cnblogs.com/cl94/" class="quanwen">>>阅读全文</a></div>

委托JavaScript跳转

  a链接触发js

<a  href="javascript:run({$vo.id});" class="quanwen">>>阅读全文</a></div>

标签元素点击触发js

<button class="layui-btn" onclick="dologin()">
    登录
</button>

原文链接 think PHP5中,模板、控制器、JavaScript的url跳转重定向方法 - cl94 - 博客园

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值