使用if语句使用javascript隐藏div

时间:2013-03-23 10:41:54

标签: javascript session xhtml

我想在值不相等的情况下使用javascript隐藏id为apDiv1的div,我使用下面的代码。但它不起作用。

<script>
/* <![CDATA[ */
if (#{sessionScope['userdet']['email']}!=#{sessionScope['frienddet']['email']}){
$('#apDiv1').hide();
}
/* ]]> */
</script>

呈现的代码如下:

<script>
    /* <![CDATA[ */
    if (amlan@ymail.com != atinr4@gmail.com){
     $('#apDiv1').hide();
    }
    /* ]]> */
</script>

2 个答案:

答案 0 :(得分:1)

呈现的代码无效JS - 您在if条件上遇到语法错误,因为您需要引用包含电子邮件地址的字符串。也就是说,您呈现的代码应如下所示:

if ("amlan@ymail.com" != "atinr4@gmail.com"){

或者你可以使用单引号,JS允许(只要它们匹配任何特定的字符串文字)。

我不知道您的源语言是什么,但我认为您可以通过以下方式获得所需的渲染结果:

if ("#{sessionScope['userdet']['email']}"!="#{sessionScope['frienddet']['email']}"){

编辑:您是否在网页上添加了jquery.js文件?您没有在问题上使用jquery标记,但$("#apDiv1").hide()部分使用jQuery函数$().hide()。如果你没有jQuery尝试这样的事情:

document.getElementById("apDiv1").style.display = "none";

此外,您显示的代码只能在脚本块出现后才能找到div,或者如果您将代码包装在文档就绪处理程序中,如下所示(尽管这也假设jQuery可用):

$(document).ready(function() {

    // your other code here    
});

使用onload处理程序的非jQuery版本:

window.onload = function() {

    // your other code here
};

答案 1 :(得分:1)

您需要将2(电子邮件)值括在引号