gpt4 book ai didi

php - 使用 PHP Switch/Case Breaks CSS 的下拉菜单

转载 作者:行者123 更新时间:2023-11-28 09:08:51 29 4
gpt4 key购买 nike

我最新的网站 Preventions(10 月 29 日开放)有一个词汇表页面。目的是使用任何下拉菜单显示有关我用于最新篮球指标的术语之一的更多信息。

有一个大问题:每次我使用下拉菜单切换到该页面时,CSS 和所有关联图像都会损坏。结果变成了一个没有样式的页面。甚至无法通过 Firebug 功能进行调试。

这是指向相关页面的直接链接:http://preventions.wammyradio.com/glossary

说明:只需转到“得分预防”下拉菜单并选择“投篮比赛”。这是我准备充分的唯一链接,因为我还没有实现该页面上的其余链接。

所有下拉菜单的说明都将与您在下面看到的一样。请忽略转义引号,我已经在 PHP 脚本中和 PHP 之外作为纯 HTML 尝试过:

<FORM>
<SELECT onChange=\"location=this.options[this.selectedIndex].value;\">
<OPTION selected class=\"Title\">Point Preventions</OPTION>
<OPTION value=\"glossary/shotcon\">Shot Contest</OPTION>
<OPTION value=\"shotblk\">Shot Block</OPTION>
<OPTION value=\"shotstl\">Shot Steal</OPTION>
<OPTION value=\"shotoff\">Shot Charge</OPTION>
<OPTION value=\"shotvoid\">Shot Void</OPTION>
</SELECT></FORM>

到目前为止,这是唯一使用 PHP 的代码。请忽略 break 命令,因为它很可能会从站点中删除:

$term = $_GET['term'];

switch ($term) {
case "shotcon":
include('dictionary/shotcon.txt');
break;
default:
break;
}

如何修改我的下拉菜单,以便在我选择一个选项后刷新页面时,CSS 不会受到损害?

编辑

感谢 Tom Hoang 为我提供了解决方法。但是现在,一个新的问题出现了。当我微调和测试代码时,我注意到“Shot Contest”之后的所有链接都不起作用。但是,如果我先选择“Shot Contest”,然后选择另一个选项, Action 就会按要求进行。直到那时我才注意到这一点,但脚本确实会查找 URL“preventions.wammyradio.com/glossary/glossary/term”。显然,每次使用菜单访问术语时,下拉菜单都会在 URL 的末尾附加另一个“词汇表/”。

奇怪的是,如果我将受影响的行更改为如下所示:

<OPTION value=\"shotcon\">Shot Contest</OPTION>

而且我选择了这个或任何其他选项,所有选项都不起作用。

我需要找到一种方法来重写 URL,这样它就不会这样做。我会进一步研究我的编码,但我认为如果 Tom 的解决方法可以针对样式、JS 文件和 Logo 图像完成,那么肯定有一个代码可以正确地修剪或添加到“词汇表”目录。

该 URL 仍可用于演示。

最佳答案

将 method="GET"添加到您的表单标签。
将 name="term"添加到您的选择标签。

例如< FORM method="GET">
< SELECT name="term"onChange=\"location=this.options[this.selectedIndex].value;\">

我假设您希望它看起来像这样:http://preventions.wammyradio.com/glossary?term=shotcon

编辑

$term = $_GET['term'];
if($term != '')
$style = "../style.css";
else
$style = "style.css";

然后在html中添加样式表时,

<link rel="stylesheet" type="text/css" href="<?php echo $style; ?>">

EDIT2

似乎如果有术语,请忽略选项值的词汇表/部分。如果缺少术语,请将词汇表/部分包含到选项值中。

$term = $_GET['term'];
if($term != '')
{
$style = "../style.css";
$dropdowns = '
<table id="GlossaryBanner"><tbody><tr>
<td align="center">
<form method="GET">
<select name="term" onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Point Preventions</option>
<option value="shotcon">Shot Contest</option>
<option value="shotblk">Shot Block</option>
<option value="shotstl">Shot Steal</option>
<option value="shotoff">Shot Charge</option>
<option value="shotvoid">Shot Void</option>
</select>
</form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Possession Preventions</option>
<option value="posstl">Possession Steal</option>
<option value="posoff">Possession Charge</option>
<option value="posvoid">Possession Void</option>
<option value="posclk">Possession Clock</option>
<option value="posorb">Possession Rebound</option>
</select></form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Assist Preventions</option>
<option value="aststl">Assist Steal</option>
<option value="astoff">Assist Charge</option>
<option value="astvoid">Assist Void</option>
</select>
</form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Other</option>
<option value="screen">Screen / Pick</option>
<option value="setup">Set-up / Hockey Assist</option>
<option value="save">Possession Save</option>
<option value="delayblk">Shot Block Delay</option>
<option value="delaydef">Deflection Delay</option>
<option value="delayjmp">Jump Ball Delay</option>
<option value="help">Help (Tally)</option>
<option value="foul">Foul (Tally)</option>
<option value="assign">Assignment (Tally)</option>
</select>
</form>
</td></tr></tbody></table>';
}
else
{
$style = "style.css";
$dropdowns = '
<table id="GlossaryBanner"><tbody><tr>
<td align="center">
<form method="GET">
<select name="term" onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Point Preventions</option>
<option value="glossary/shotcon">Shot Contest</option>
<option value="glossary/shotblk">Shot Block</option>
<option value="glossary/shotstl">Shot Steal</option>
<option value="glossary/shotoff">Shot Charge</option>
<option value="glossary/shotvoid">Shot Void</option>
</select>
</form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Possession Preventions</option>
<option value="glossary/posstl">Possession Steal</option>
<option value="glossary/posoff">Possession Charge</option>
<option value="glossary/posvoid">Possession Void</option>
<option value="glossary/posclk">Possession Clock</option>
<option value="glossary/posorb">Possession Rebound</option>
</select></form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Assist Preventions</option>
<option value="glossary/aststl">Assist Steal</option>
<option value="glossary/astoff">Assist Charge</option>
<option value="glossary/astvoid">Assist Void</option>
</select>
</form>
</td>
<td align="center">
<form>
<select onchange="location=this.options[this.selectedIndex].value;">
<option selected="" class="Title">Other</option>
<option value="glossary/screen">Screen / Pick</option>
<option value="glossary/setup">Set-up / Hockey Assist</option>
<option value="glossary/save">Possession Save</option>
<option value="glossary/delayblk">Shot Block Delay</option>
<option value="glossary/delaydef">Deflection Delay</option>
<option value="glossary/delayjmp">Jump Ball Delay</option>
<option value="glossary/help">Help (Tally)</option>
<option value="glossary/foul">Foul (Tally)</option>
<option value="glossary/assign">Assignment (Tally)</option>
</select>
</form>
</td></tr></tbody></table>';
}

然后在适当的位置包含 $dropdowns 变量

<?php echo $dropdowns; ?>

关于php - 使用 PHP Switch/Case Breaks CSS 的下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26569069/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com