【问题标题】:How to change rendered="false"> rendered="true" on JSF PAGE如何在 JSF PAGE 上更改 render="false">render="true"
【发布时间】:2017-04-30 09:47:42
【问题描述】:

我正在开发一个春季项目。我正在使用 jsf java javascript 和 jquery。

但我有问题。

t 如果用户选中复选框

我怎么会这样。

我试过了

<script type="text/javascript">
    function ozgur() {
        if(document.getElementById('fikirCheck').checked) {
            document.getElementById("secondPage").setAttribute("rendered",true);

        }else{
            document.getElementById("secondPage").setAttribute("rendered",false);
        }


    };
</script>

checkbox 布尔复选框。

感谢您的帮助

【问题讨论】:

  • 你检查答案了吗?

标签: javascript jquery jsf jsf-2


【解决方案1】:

回答

你就是不能! rendered 属性由 JSF 在服务器端评估。因此,当它处理页面时,它会评估组件,如果rendered 的结果为假,则组件不会得到处理,也不会转到最终的 html 到客户端。

解决方案:

您可以将组件包装到一个 div 并使用 style: display:none 并使用 javascript 控制它。看看How to change css display none or block property using Jquery?。这可以帮助你。

【讨论】:

  • 您可以将style: display=none 放在组件本身上。无需包装(在此用例中)
【解决方案2】:

你也可以直接给渲染的标志值,比如

<h:selectBooleanCheckbox value="#{myBean.value}" id="chk" rendered="true"/> 

或来自 Bean

<h:selectBooleanCheckbox value="#{myBean.value}" id="chk" rendered="#{myBean.isRender}"/>

【讨论】:

    猜你喜欢
    • 2011-05-18
    • 2012-05-03
    • 1970-01-01
    • 2017-09-11
    • 2012-09-21
    • 1970-01-01
    • 1970-01-01
    • 2017-07-15
    • 2014-06-16
    相关资源
    最近更新 更多