在<c:if><c:if>里调用js

JavaScript09

在<c:if><c:if>里调用js,第1张

可能的原因有以下几种:

确保jsp页面有引用c标签,可以通过在c:if之前${user}这样也可以输出session里的对象会打印出类包名。

确保页面引用了jquery

js页面加载的问题,js加载是有顺序的。要在dom都加载好后才能取得页面的ID值的。

样式也可能使你的窗口看不到比如被别的层遮了。特别是iframe容易遮别人

解决调试方法代码如下:

如果类不为空,这里会显示类名:${user}

<c:if test="${empty user}">

<script>

alert("说明user为空,已经进入JS")//alert是js最好的调试工具可以知道js是否已经执行到这行

$(function(){//用jquery页面初始化加载会在dom加载完后执行确保curtain等ID能取到

  alert($("#curtain").html())

$("#dialogue").css({top:150,left:500,position:"absolute","z-index":99999})//这个要绝对定位z-index要比较高才能浮起来

$("#curtain").show()

})

</script>

</c:if>

<c:if>标签的两种形式如下:

1.无体:

<c:if test="testCondition" [var="varName"] [scope="page|request|session|application"] />

2.有体:

<c:if test="testCondition" [var="varName"] [scope="page|request|session|application"] />

Content

</c:if>

test中执行判断,结果为true时执行Content中的内容,var保存test中的布尔值,scope设置属性范围