我有一个PHP会话变量,$_SESSION['user']在整个会话期间都存活.在head部分,我包含了我的JavaScript文件scripts.js.
如果我想要如下所示的内容,如何将会话变量传递到JavaScript文件中.
$.("#btn').click (
function() {
alert('<?php echo $_SESSION['user']; ?>');
}
)
Run Code Online (Sandbox Code Playgroud)
由于<?php ?>JavaScript文件中无法识别,因此上述代码无效.所以我要放入PHP文件本身,但是如何将它保存在JavaScript文件中呢?
Chr*_*ris 14
在PHP文件中,您可以将用户设置为全局变量:
<script type="text/javascript">
var ptamzzNamespace = {
sessionUser : '<?php echo $_SESSION['user']; ?>'
}
</script>
Run Code Online (Sandbox Code Playgroud)
在包含外部JavaScript代码之前包括此内容.
然后在您的JavaScript文件中,您可以使用它:
$.("#btn').click (
function() {
alert(ptamzzNamespace.sessionUser);
}
)
Run Code Online (Sandbox Code Playgroud)
另外:
如果您不确定您的会话varibale是否可以包含引号,您可以使用它addslashes()来解决此问题:
<?php echo addslashes($_SESSION['user']); ?>即使这可能会产生你不想显示的东西(因为它产生一个带有斜杠的字符串),它将有助于你的代码不会失败.(感谢Artefacto)
这会是你的选择吗?
| 归档时间: |
|
| 查看次数: |
22981 次 |
| 最近记录: |