0

我尝试了以下代码来显示一些 div。

<?
$uri=$_SERVER['REQUEST_URI'];
$uri=explode('/',$uri);
$uri=$uri[4];
echo $uri;
?>
<script type="text/javascript">
$(document).ready(function() {
var ty=<?=json_encode($uri);?>;
if(ty="gen")
{
  alert("gen");
}
else if(ty="cc")
{
  alert("cc");
}
else
{
  alert("not gen");
}
});
</script>

$uri值将类似于/site/view-wall/type/gen/id/6。类型变量可以更改为 vo、cc、fr 等。如果我将网址更改为 www.example.com/site/view-wall/type/cc/id/6,我会收到警报“gen”,而不是“抄送”。总是我得到警报“gen”。if 条件不起作用。我无法弄清楚简单的 if 条件:(

任何帮助都应该不胜感激!

4

2 回答 2

1

您正在设置变量值,您必须使用 double equal == 进行比较

于 2013-04-29T02:41:06.170 回答
0

在 JavaScript 中,==还是===用来比较的;您正在使用=,它设置变量的值。当你这样做时:

if(ty="gen")
{
  alert("gen");
}

这相当于这样做:

ty = "gen";
if(ty) {
    alert("gen");
}

所有非空字符串都是真实的,所以你的条件总是成功的。

要修复它,请将=所有条件中的 更改为=====

于 2013-04-29T02:40:58.820 回答