假设我有
<p:outputPanel/>
我想要做的是使用js方法而不是服务器端指定渲染的attr。 这是为了提高性能。 所以我需要这样的东西:
<p:outputPanel rendered = "someJsFunction()"/>
解决方案是什么?
答案 0 :(得分:2)
rendered
属性,如果它解析为false,则element
不会添加到html文档中。因此,javascript
甚至无法找到显示或隐藏的元素,因为未创建。
您唯一能做的就是删除呈现的属性并使用javascript更改元素的display属性。
<div id="myDiv">My Content</div>
<button onclick="myFunction()">Click Me</button>
<script>
function myFunction() {
document.getElementById("myDIV").style.display = "none";
}
</script>
答案 1 :(得分:0)
嗯,您可以在页面加载时产生相同的效果,因为{+ 1}}属性仅在服务器端解析,因此使用rendered
可以像
jQuery
并且不会显示。