【问题标题】:Richfaces 4 Datatable with onclick Event on rowRichfaces 4 Datatable 与行上的 onclick 事件
【发布时间】:2011-12-01 16:51:04
【问题描述】:

我有一个简单的 Richfaces 4 <rich:dataTable> 和一些 <rich:column>s。

现在,如果我按下一行,我希望在表格下方显示该行的 ID。

这是我到目前为止所做的:

<rich:dataTable value="#{placeholder_control.lichtList}" var="licht" width="100%" id="lichtListe" columns="2">
<rich:column>
            <f:facet name="header">
                <h:outputText value="Beschreibung" />
            </f:facet>          
            <h:outputText value="#{licht['beschreibung'].stringValue}" width="20" />
            <a4j:ajax immediate="true" event="onclick" render="testingID" listener="#{placeholder_control.selectActiveLight}">
                <f:attribute name="rowKey" value="#{licht['id'].stringValue}" />
            </a4j:ajax>             
        </rich:column>
...
...
<h:outputText value="This is the id : #{placeholder_control.selectedLight}" id="testingID"></h:outputText>

托管 bean placeholder_control 看起来像这样

@ManagedBean (name="placeholder_control")
@SessionScoped
public class ControlPlaceholder {

public void selectActiveLight(ActionEvent evt) {
   String selectedRow = (String) evt.getComponent().getAttributes().get("rowKey");
   System.out.println("Selected Light : " + selectedRow);
   setSelectedLight(selectedRow);
}

一切都会正确呈现,但如果我点击行(在这一列上),什么也不会发生。我还尝试将一个不存在的方法(故意)提供给听众。我希望收到一条错误消息,但什么也没发生。

如果我查看 HTML 源代码,onclick 在那个 &lt;td&gt; 元素处没有任何内容。

有人有想法吗?

【问题讨论】:

    标签: java ajax jsf-2 richfaces


    【解决方案1】:

    您好,朋友看看rich:extended datatable,我用它来完成满足您要求的任务。 这是 Richfaces 4 的展示,并解释了扩展数据表的使用:http://richfaces-showcase.appspot.com/richfaces/component-sample.jsf?demo=extendedDataTable&sample=exTableSelection&skin=blueSky 干杯

    【讨论】:

    • 欢迎来到 StackOverflow scox。这不是对 OP 问题的具体答案。请发布更直接/有用的答案。干杯
    猜你喜欢
    • 1970-01-01
    • 2012-12-22
    • 2011-01-28
    • 1970-01-01
    • 2017-01-17
    • 2011-11-23
    • 2013-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多