我想在值不相等的情况下使用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>
答案 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(电子邮件)值括在引号
中