[英]Javascript, using session variable for switch statement
我不确定如何执行此操作,但我想使用给定值,该值来自javascript switch语句中的会话变量,以使隐藏的div在大小写匹配时可见。 到目前为止,我明白了。
在另一个div内的列表内的隐藏div。 位于第1页。
<html>
<div id="sidebar-wrapper">
<ul class="sidebar-nav">
<li class="sidebar-brand">a href="#">home</a></li>
<li><div style="display:none;" id="div1"> <a href="#">page 1</a></div></li>
<li><div style="display:none;" id="div2"> <a href="#">page 2</a></div></li>
<li><div style="display:none;" id="div3"> <a href="#">page 3</a></div></li>
</ul>
</div>
从会话中获取值。 位于第1页。
<input type="hidden" id="ID" value="<?php echo $_SESSION['ID'];?>" />
</html>
javascript,位于第2页。
var sessionID = document.getElementById("ID").value;
$(document).ready(function() {
switch(sessionID) {
case 2002:
$("#div1").show();
break;
case 2003:
$("#div2").show();
break;
case 2004:
$("#div3").show();
break;
}
});
</script>
我的问题是它不起作用,我不确定为什么。 任何帮助都非常有用。
我的第2页设置如下。
<?php include "header.php";?>
<div id="content">
Some random text
</div>
<script>The script goes in here</script>
<?php include "footer.php";?>
进行了更清晰的编辑。 由于事情仍然没有按预期进行。
搭配琴弦盒
case '2002':
$("#div1").show();
break;
case '2003':
$("#div2").show();
break;
case '2004':
$("#div3").show();
break;
sessionID
是一个String
但case子句包含整数。 因此,将sessionId转换为Number
。 考虑到还有其他方法,一元运算符+
将帮助我们将其转换为Number。
switch(+sessionID) {
case 2002:
$("#div1").show();
break;
case 2003:
$("#div2").show();
break;
case 2004:
$("#div3").show();
break;
}
其他方式是switch(Number(sessionId))
和switch(parseInt(sessionId,10))
并将case子句转换为String,如case '2002'
使用parseInt
函数将字符串转换为整数
var sessionID = parseInt(document.getElementById("ID").value);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.