我创建了可膨胀的列/具有丰富的行的简单的解决方案:数据表和富:列,它是类似于:作出最佳方式可膨胀/可收缩的子表具有丰富:dataTable中

在小面的代码(简化的)如下:

<rich:dataTable id="detailtable"
    value="#{bean.model}"
    var="row"
    columns="2">
    <rich:column id="detail-check">
        <f:facet name="header">
            <h:selectBooleanCheckbox value="#{bean.expandAll}">
                <a4j:support event="onchange" action="#{bean.expandAllAction}"
                    reRender="detailtable" />
            </h:selectBooleanCheckbox>
        </f:facet>
        <h:selectBooleanCheckbox value="#{row.expanded}">
            <a4j:support event="onchange" reRender="detailtable" />
        </h:selectBooleanCheckbox>
    </rich:column>
    <!-- actual data column -->
    <rich:column id="detail-column"
        rendered="#{row.expanded}"
        breakBefore="true"
        colspan="2">
        <!-- detail column content -->
    </rich:column>
</rich:dataTable>

此当你点击一个细节框提供了扩展的列的表,详细列呈现实际的行下面。超过行辅助bean刚进行迭代,并且expandAllAction设置它们的膨胀属性一样支持bean,从而扩大/ unexpanding所有行。

然而,这并不正确地使用Internet Explorer(IE7或IE8)工作,尽管它与FF和Chrome工作。如果用户点击复选框,没有被渲染,直到他点击页面上的任何其他地方。辅助bean和对象被更新,但直到某些其它元件被点击没有重新呈现。

这是不是邪恶的再次的IE或只是一个bug与RichFaces的?我发现了一些类似的问题与IE和TBODY,但它应该已得到修复。我可以提交错误报告,但直到那,有没有简单的解决方法吗?

RichFaces的版本是3.3.1,它的运行在JBoss 4.2.1GA和捆绑的Sun RI。

有帮助吗?

解决方案

尝试使用像onclick结果,另一事件 从 selectBooleanCheckBox tldoc:onchange“Javascript代码在此元素失去焦点,并且自获得焦点其值已被修改来执行。” onclick“Javascript代码当点击此元素的指针按钮来执行。”

昨天是类似的问题。 BalusC的一个评论可能会证实我的假设的“在收音机的情况下/检查框更改事件是在某些浏览器,如果你点击2次,仅启动”

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top