前提:
使用ThinkPHP。后台传一个变量到html页面:$this->assign("variable", $variable);
问题:
在html页面中嵌套js代码,在js的代码中输出这个变量:
<script language="JavaScript"> var variable =<?php echo $variable;?>; alert(variable); //这样是可以正常输出的</script>
将上面的代码迁移到js文件variable.js中,再在该html页面引入这个js文件,这时候就会出错,不但是输出不来,还是造成js错误,js代码都运行不了。
我的解决方法是:
写隐藏标签
再在js中获取该元素的值
如果你有使用jq的话,你可以在标签中添加属性:
js: var variable =$("div").attr("data-value");
上面两种方法都有个缺陷,就是variabe都是可见的,只要别人“审查元素”就能看见你的variable是什么,是保密的数据就不建议这样做了。