[smarty] 在smarty模板中使用smarty变量初始化 javascript 变量的问题
- // 总结:
// 1/ 在smarty 模板文件中,使用从php中assign过来的smarty变量,一定需要使用双引号或单引号来括住smarty变量,如:var title="<!--{$title}-->";
// 2/ 如果不使用引号括住,在smarty变量值为字符串的情况下,那么该字符串在javascript中会被作为javascript变量来解释,所以就会产生错误。
// 3/ 变量值是数字,那么则不会产生错误
// tpl 文件- <script>
- if(navigator.userAgent.toLowerCase().match(/app_.*_hinabian/)){
- <!--{if isset($APP_PAGE_TITLE)}-->
- document.title = <!--{$APP_PAGE_TITLE|default:'所有移民项目'}-->; // 这里没有使用引号(单引号或双引号)括住smarty变量值,如果该smarty变量是字符串,那么在 javascript中就会被当作是一个变量来处理,所以就会出现 uncaught referenceError<!--{else}-->
- document.title = document.title.replace(' · 海那边', '').replace('·海那边', '').replace('_海那边', '');
- <!--{/if}-->
- }
- </script>
- // php + smarty 处理后返回给浏览器的数据
- <script>
- if(navigator.userAgent.toLowerCase().match(/app_.*_hinabian/)){
- document.title = 普通投资移民项目;
- }
- </script>
错误提示截图:
[smarty] 在smarty模板中使用smarty变量初始化 javascript 变量的问题的更多相关文章
- java变量和javascript变量之间的传递
java代码是运行在服务器上的,返回的值只是静态的存在于页面,而javascript是脚本语言,是运行在客户端的!它们是两种完全不同的语言,变量不能直接进行交换,但是通过一定的方式,变量可以传递. j ...
- smarty直接在模板中格式化时间的方法
smarty提供了一个获取时间戳的方法: <%$smarty.now%> 使用该方法获取到当时的时间戳之后,使用格式化修饰符data-format进行修饰: <%$smarty.no ...
- THinkPHP在模板中的volist循环使用外部变量注意事项
循环中.自己定义的id=volist就可以使用$volist.id 或者$volist['id'] 而外面定义的变量就不能使用$vo.id 必须使用$vo['id']<volist name=& ...
- mvc4中 @Url.Action 如何读取javascript变量的值
js中 function Search() { var businessDate = GetSelectedBusinessDate("#businessYear", ...
- 在thinkphp框架模板中引用session
我已经将模板引擎配置为smarty,在模板中使用常量是写为 {$smarty.const.ADMIN_IMG} 到使用到session的值时这样写 {$smarty.session.mg_name}
- JavaScript 变量
一,JavaScript 变量(存储信息的容器) 与代数一样,JavaScript 变量可用于存放值(比如 x=2)和表达式(比如 z=x+y). 变量可以使用短名称(比如 x 和 y),也可以使用描 ...
- JavaScript变量作用域(Variable Scope)和闭包(closure)的基础知识
在这篇文章中,我会试图讲解JavaScript变量的作用域和声明提升,以及许多隐隐藏的陷阱.为了确保我们不会碰到不可预见的问题,我们必须真正理解这些概念. 基本定义 作用范围是个“木桶”,里面装着变量 ...
- C++关于变量初始化的琐记
#include <iostream> using namespace std; class Base{ virtual void func1() { cout<<" ...
- SMARTY模板中如何使用get,post,request,cookies,session,server变量
{$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量.例如,直接在模板中访问页面请求变量.获取访问模板时的时间戳.直接访问PHP中 ...
随机推荐
- python json5
install pip install json5 test a.json: { 'a':'b', 'aa':['b1','b2']} =========================== impo ...
- 多序列比对后可视化之texshade
一 :准备工作 1)中文的 LaTeX - CTEX 2)LaTeX 的*.tex 的编辑工具-Texmarker 3)TEXshade宏包 二:安装 1) 直接双击运行下载的CTEX,安装过程中,可 ...
- 利用R求分位数及画出箱型图
1)数据集 data<-c(75.0,64.0,47.4,66.9,62.2,62.2,58.7,63.5,66.6,64.0,57.0,69.0,56.9,50.0,72.0) 默认是四分位: ...
- Linux删除文件名中包含“-”的文件
背景: 练习用shell的一些特殊符号,输出了一个 cat test.txt > -n,结果创建了一个叫做“-n”的文件 问题: 使用rm -f -n删除不了“-n"文件 解决 ...
- Python iter() 函数
Python iter() 函数 Python 内置函数 描述 iter() 函数用来生成迭代器. 语法 以下是 iter() 方法的语法: iter(object[, sentinel]) 参数 ...
- python OSError: [Errno 22] Invalid argument: 'D:\\crawle\x01.html1'
import urllib.request file = urllib.request.open("http://www.baidu.com") data = file.read( ...
- android:cmd下面用adb打log
进入cmd命令行,启动adb 1.用adb打log:adb logcat 2.过滤log信息:adb logcat | findstr *** 这里的***就是你需要设置的过滤项,如myscan ...
- iOS - swift项目接入bugly - 报错, 配置符号表,下载Java环境,
1.pod 安装,无需配置任何东西 2.终端找到路径: pod install 3.在 appdelegate 导入 import Bugly extension AppDelegate{ /// ...
- linux文件管理2
1.显示文件内容 cat : 显示文件内容 tac : 倒序显示内容 2.更改文件权限 chmod :更改文件权限 -R 递归改变 chown :更改文件拥有者 -R 递归改变 chgrp :更改文件 ...
- Spring框架之log日志的使用
1.Spring框架也需要引入日志相关的jar包 * 在spring-framework-3.0.2.RELEASE-dependencies/org.apache.commons/com.sprin ...