开发者

Richfaces 4 Datatable with onclick Event on row

开发者 https://www.devze.com 2023-04-10 17:53 出处:网络
I have a simple Richfaces 4 <rich:dataTable> with some <rich:column>s. Now I want if I press on one row, that below the table the ID of the row should be displayed.

I have a simple Richfaces 4 <rich:dataTable> with some <rich:column>s.

Now I want if I press on one row, that below the table the ID of the row should be displayed.

Here is what I did so far:

<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>

The managed bean placeholder_control looks like this

@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);
}

Everything will be rendered correctly, but if I click on the row (on this column), nothing happens. I also tried to put a non existing method (on purpose) to the listener. I hoped that I get an error message but nothing happend.

If I look at the HTML source code, there is nothing with onclic开发者_如何转开发k at that <td> element.

Anyone has an idea?


hi friend take a look to rich:extended datatable, i used it to do a task that meet your requirements. here is the showcase for richfaces 4 and explains the use of extended datatable: http://richfaces-showcase.appspot.com/richfaces/component-sample.jsf?demo=extendedDataTable&sample=exTableSelection&skin=blueSky cheers

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号