我在index.php中有一个php导航,并在index.php中包含不同的内容,具体取决于点击的导航标签。 我现在有一个问题,我想在包含页面时添加/删除“class =”active“”。也许有一个非JavaScript的解决方案,但也有JavaScript,我现在无法管理好几个小时......
非常感谢您的帮助!
Navigation:
<li class="<?php echo ($page_id == 'Home' ? "active" : "")?>"><a href="index.php?go=home" class="activator">Home</a></li>
<li class="<?php echo ($page_id == 'Konzept' ? "active" : "")?>"><a href="index.php?go=konzept" class="activator">Konzept</a></li>
...
<?php
if (isset($_GET['go']))
{
switch($_GET['go'])
{
case 'home': include('home.html');
$page_id == 'Home';
break;
case 'konzept': include('konzept.html');
$page_id == 'Konzept';
break;
...
}
}
?>
答案 0 :(得分:0)
对我来说,这似乎是一个简单的语法错误
<?php echo ($page_id == 'Home' ? 'active' : '')?>
您的字符串已经以"
开头,因此您需要使用'
或\"
来取消引用。
只要你的导航结构出现在isset之后,你就可以去了。
最后还有一件事,如果页面在查询字符串中没有go
,则永远不会设置page_id
,并且会出现undefined index
错误,所以首先在isset的范围之外定义它。
<?php
$page_id = false;
if(isset(.....