`
zccst
  • 浏览: 3322459 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何在纯js文件中设置yii方式的url地址

    博客分类:
  • YII
 
阅读更多
作者:zccst


1,在siteController.php中
public function actionBaseJs() {
		$this->layout = false;
		$this->render("base");
	}


2,在view/site/base.php里
<?php
/**
 * 用来在客户端相对编码地址,避免不同的路由规则导致客户端脚本中的地址出现问题
 */
$baseUrl = Yii::app()->baseUrl;
if(Yii::app()->urlManager->showScriptName) {
	$baseUrl .= "/". basename($_SERVER['SCRIPT_FILENAME']); 
}

?>

var BudgetURL = {
	baseUrl: "<?php echo $baseUrl; ?>"
};

批注:
(1)$_SERVER['SCRIPT_FILENAME']
//当前执行程序的绝对路径及文件

(2)basename()
函数返回路径中的文件名部分。
$path = "/testweb/home.php";
//显示带有文件扩展名的文件名
echo basename($path); //home.php

//显示不带有文件扩展名的文件名
echo basename($path,".php");  //home

(3)
"/". basename($_SERVER['SCRIPT_FILENAME'])  结果是:/index.php


3,在main.php引入
<?php
if($this->user->id) {
Yii::app()->clientScript->registerScriptFile(Yii::app()->createUrl('site/baseJs'));
}
?>

批注:在main.php加载时,会请求相应controller的相应action,获取到相应的值。

分享到:
评论

相关推荐

    yii2 百度编辑器

    2. 配置:在Yii2的配置文件(如`config/web.php`)中,确保已经包含了所需的js和css资源。扩展通常会提供一个配置类,允许你设置编辑器的参数,如图片上传路径、允许的文件类型等。 3. 使用Widget:在视图文件中,...

    Yii2中文手册(完整版)

    在安装与配置部分,你可以学习如何通过Composer设置Yii2环境,理解配置文件的结构以及如何自定义应用设置。目录结构部分则会讲解每个目录和文件的作用,以便你更好地组织代码。 在MVC部分,手册详细阐述了模型如何...

    Yii2(归档文件)框架

    **Composer**:作为 PHP 的依赖管理工具,Composer 在 Yii2 中起到了关键作用。它可以安装和更新项目所需的第三方库,如 Yii2 自身和其他扩展。 **扩展和社区支持**:Yii2 社区活跃,有大量的第三方扩展,例如:Yii...

    yii-advanced-app-2.0.36.tgz

    6. **路由(Routing)**:Yii 2 使用 URL 管理器来解析和生成 URL,这在 `config/routes.php` 文件中配置。 7. **组件(Components)**:Yii 2 的组件系统允许自定义全局行为,如设置日志组件或邮件服务。 8. **库...

    Yii框架执行流程及部分源码分析

    在Yii2中,请求组件被进一步优化为`yii\web\Request`。 5. **Run方法流程** 应用的`run()`方法是整个执行流程的核心。它会解析URL,调度到相应的控制器和动作,然后执行动作并返回响应。具体流程包括: - URL管理...

    yii框架笔记,绝对值得经典

    - **资源集成**:将CSS、图片、JavaScript等静态资源文件统一放置在一个目录下,并通过常量进行引用,便于管理和维护。 - **用户登录模板**:创建用户登录相关的控制器和视图,实现登录功能。 ### 路由详解 #### ...

    Yii2.0视频教程

    - **缓存机制**:Yii内置了多种缓存方式,如APC、Memcached等,可以显著提高应用性能。 - 数据缓存:对数据库查询结果进行缓存,减少重复查询。 - 页面缓存:将整个页面内容缓存起来,加速页面加载速度。 - **静态...

    Yii2扩展开发与代码复用:以资源包为例

    $css属性和$js属性分别定义了需要包含的CSS样式表文件和JavaScript文件。$depends属性用于指定资源包所依赖的外部资源包列表,这有助于确保在加载当前资源包前已经加载了所需的依赖资源包。 在开发Yii2扩展时,可以...

    yii2简单注册登录

    5. **路由和控制器**:在Yii2中,URL路由到特定的控制器动作。注册和登录可能对应于独立的控制器(如SiteController或UserController),包含处理这些请求的动作,如actionRegister和actionLogin。 6. **视图渲染**...

    yii2 头像上传 完整版 带cookie保存

    在Yii2中实现头像上传功能是一项常见的需求,特别是在用户个人信息管理或者社交网络应用中。这个"yii2 头像上传 完整版"插件是专门为Yii2框架设计的,旨在帮助开发者快速集成头像上传功能,同时通过cookie保存用户...

    基于Yii2+layui的后台框架模板,实现了完善的RBAC权限控制-yii2-admin-theme.zip

    项目中的"yii2-admin-theme"应该是这个框架模板的主题部分,可能包含了与layui框架集成的HTML、CSS和JavaScript文件,用于创建后台管理界面的布局和样式。开发者可以通过定制这些文件来调整后台的视觉效果,以满足...

    Yii框架学习笔记

    在Yii中,静态资源如CSS、图片和JS通常放在统一的目录下,通过常量引用,便于管理和调用。例如,创建`UserController`和`actionLogin`方法,配合视图文件`views/user/login.php`,可以实现用户登录功能。路由系统...

    yii-basic-app-2.0.35.tgz

    Yii框架是PHP开发中的一个高性能、基于组件的MVC(模型-视图-控制器)架构的...在理解和熟悉这个模板的基础上,开发者可以进一步学习Yii2的高级特性,如模块化、行为、事件、服务定位器等,以构建更复杂的企业级应用。

    yii ajax demo

    在 Yii 中使用 AJAX(异步 JavaScript 和 XML)可以极大地提升用户体验,因为它允许后台数据的无刷新更新。本教程将深入探讨如何在 Yii 框架中实现 AJAX 功能,以及与之相关的知识点。 首先,`vtalk.ini` 文件可能...

    详解PHP的Yii框架中自带的前端资源包的用法_.docx

    4. **`yii\web\AssetBundle::js`**:一个包含资源包中JavaScript文件的数组。每个JavaScript文件可以通过相对路径或绝对URL地址进行指定。 #### 六、资源包的使用 一旦定义了资源包,就可以在视图中注册并使用它们...

    Yii Framework 1.1.6

    在Yii 1.1.6中,核心特性包括: 1. **MVC架构**:Model-View-Controller(MVC)设计模式是Yii的基础,它将业务逻辑、数据和用户界面分离,使代码更易于管理和维护。 2. **数据库支持**:Yii提供了一个强大的Active...

    YII2框架整合H+后台UI框架

    1. **安装H+**: 将`H+`的前端资源(CSS、JavaScript、图片等)复制到`YII2`项目的`web`目录下,通常可以放在`web/css`、`web/js`和`web/images`等相应子目录中。确保路径正确,以便于在视图文件中引用。 2. **调整...

    Yii面试题摸底测试教学考前摸底

    #### 一、Yii2的部署方式 **知识点解析:** 1. **本地开发环境部署:** 开发者通常会在本地搭建一个类似生产环境的配置来进行开发和调试工作。本地环境中最常用的工具是XAMPP、MAMP、WAMP等,这些工具集成了Apache...

    yii ajax应用

    在Yii中,Ajax(异步JavaScript和XML)技术被广泛应用于提高用户体验,通过发送背景请求来更新部分页面内容,而无需刷新整个页面。下面将详细解释Yii中实现Ajax应用的原理,以及上述例子中的具体实现过程。 1. **...

    yii2 advanced 框架

    在Yii2 Advanced框架中,MVC模式是核心设计原则。"模型"(Model)负责处理业务逻辑和数据管理,"视图"(View)专注于展示用户界面,而"控制器"(Controller)作为中间人,协调模型和视图之间的交互。这种分离使得...

Global site tag (gtag.js) - Google Analytics