我在文档头部的脚本标记中定义了一个变量:
<?php if (isset($_SESSION['logged_in']) && $_SESSION['logged_in'] == true) {
echo '<script>var userdir = '.$_SESSION['user']->directory.'</script>';
} ?>
之后我包含了几个javascript文件,其中一个包含一个包含
的函数if (type == 'image'){
var imgElement = elementId.replace(/upload_/, "img_");
$('#'+imgElement).attr("src", "assets/uploads/"+ userdir +"/images/" + vidfile);
}
如果我查看源文件,则在文档中定义userdir,但返回的图像路径为“未定义”。不应该得到价值吗?
答案 0 :(得分:1)
您几乎肯定需要在userdir的分配中包含引号。
echo '<script>var userdir = "'.$_SESSION['user']->directory.'";</script>';
答案 1 :(得分:0)
在函数之外定义的任何内容都将是一个全局变量。我假设您在文档中定义的变量是一个全局变量。该全局变量应该在任何函数内部可用。我假设你的包含文件是由函数组成的。如果实际上已经定义了全局值,并且您无法在函数或js文件中访问它们,那么我会质疑事物加载的顺序。