Js拼接嵌套php代码,分享一个js文件中嵌套php会出错的问题
前提:
使用ThinkPHP。后臺(tái)傳一個(gè)變量到html頁(yè)面:$this->assign("variable", $variable);
問(wèn)題:
在html頁(yè)面中嵌套js代碼,在js的代碼中輸出這個(gè)變量:
var?variable?=<?php ?echo?$variable;?>;
alert(variable);
//這樣是可以正常輸出的
將上面的代碼遷移到j(luò)s文件variable.js中,再在該html頁(yè)面引入這個(gè)js文件,這時(shí)候就會(huì)出錯(cuò),不但是輸出不來(lái),還是造成js錯(cuò)誤,js代碼都運(yùn)行不了。
我的解決方法是:
寫(xiě)隱藏標(biāo)簽
再在js中獲取該元素的值
如果你有使用jq的話,你可以在標(biāo)簽中添加屬性:
我是divjs: var variable =$("div").attr("data-value");
上面兩種方法都有個(gè)缺陷,就是variabe都是可見(jiàn)的,只要?jiǎng)e人“審查元素”就能看見(jiàn)你的variable是什么,是保密的數(shù)據(jù)就不建議這樣做了。
追加:剛剛利用審查元素測(cè)試了,如下所說(shuō),是可以就算放在js里也是會(huì)輸出variable的,確實(shí)沒(méi)有安全性的說(shuō)法。
總結(jié)
以上是生活随笔為你收集整理的Js拼接嵌套php代码,分享一个js文件中嵌套php会出错的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: grpc简单使用 java_gRPC学习
- 下一篇: php jquery 源码,最新版jQu