我目前正在尝试将导航栏封装在一个javascript文件中,这样我就不需要将整个代码放在每个页面上。导航栏工作正常……直到我在字符串变量中插入了一些php逻辑...这就是我的意思。
strVar += " <?php if($_COOKIE['username'] != \"\"){ ?>";
strVar += " <div class=\"stack\">";
strVar += " <ul class=\"nav pull-right\">";
strVar += " ";
strVar += " <li>";
strVar += " <p class=\"navbar-text login\">Logged In as: <\/p>";
strVar += " <\/li>";
strVar += " <li>";
strVar += " <p class=\"navbar-text user\">";
strVar += " <?php echo $_COOKIE['username'];?>";
strVar += " <\/p>";
strVar += " <\/li>";
strVar += " ";
strVar += " <p>";
strVar += " <a href=\"..\/php\/logout.php\">";
strVar += " Logout";
strVar += " <\/a>";
strVar += " | ";
strVar += " <a href=\"#\">Control Panel";
strVar += " <\/a>";
strVar += " <\/p>";
strVar += "";
strVar += " <\/ul>";
strVar += " <\/div>";
strVar += " <?php } ?>";
document.getElementById("customNav").innerHTML= strVar;我从一个.php文件中调用这个脚本:
<! --NavBar-->
<header class="row">
<div id="customNav" class="span12">
<script src="js/topNavBar.js" type="text/javascript">
</script>
</div>
</header>
<!--NavBar-->到目前为止,如果我将JS脚本作为正常的html/php代码嵌入,它将完全正常工作。但是,当我执行上面的操作时,它完全忽略了php代码,但正确地显示了工具栏,就好像php从未编写过一样。有人知道为什么吗?
谢谢
发布于 2013-06-10 05:07:45
你完全弄错了。浏览器看不到任何php逻辑,因为它是在服务器上编译的,并作为纯html(或javascript)发送到浏览器。另外,你不能在.js文件中写php代码。
strVar = "";document.getElementById("customNav").innerHTML= strVar;
https://stackoverflow.com/questions/17013931
复制相似问题