小编Fra*_*nzl的帖子

完成<p:ajax event ="cellEdit">后更新整个<p:dataTable>

一旦编辑了一个单元格,我就很难重新渲染PrimeFaces Datatable.更改一个单元格中的值可能会更改其他单元格中的条目,因此需要刷新整个表格.

这是JSF页面:

<h:form id="testForm">
    <p:outputPanel id="testContainer">

        <p:dataTable id="testTable" value="#{tableBean.data}" var="entry" editable="true" editMode="cell">

            <p:ajax event="cellEdit" listener="#{tableBean.onCellEdit}" update=":testForm:testContainer" />

            <p:column headerText="Col1">  
                <p:cellEditor>
                    <f:facet name="output"><h:outputText value="#{entry.col1}" /></f:facet>
                    <f:facet name="input"><p:inputText value="#{entry.col1}" /></f:facet>
                </p:cellEditor> 
            </p:column>

            <p:column headerText="Col2">
                <p:cellEditor>
                    <f:facet name="output"><h:outputText value="#{entry.col2}" /></f:facet>
                    <f:facet name="input"><p:inputText value="#{entry.col2}" /></f:facet>
                </p:cellEditor>  
            </p:column>

        </p:dataTable>

        <p:commandButton id="refreshButton" value="Redisplay" update="testContainer" />

    </p:outputPanel>                                    
</h:form>
Run Code Online (Sandbox Code Playgroud)

这是支持bean:

@ManagedBean(name = "tableBean", eager = false)
@ViewScoped 
public class TableBean {

    public TableBean() {
        RowData entry = new RowData("a1", "b1");
        entries.add(entry);
        entry = new RowData("a2", "b2");
        entries.add(entry); …
Run Code Online (Sandbox Code Playgroud)

datatable jsf primefaces celleditorlistener

33
推荐指数
3
解决办法
5万
查看次数

在调用const函数期间,std :: map可以重新平衡吗?

我有一个const std::map<std::string, std::vector<double>>成员变量和一个函数const std::vector* foo().我希望这个函数有时会返回一个指向这个地图元素的指针.但是我担心地图可能会重新平衡 - 即使在std::map标记的函数中const- 也会使返回的指针无效.我知道任何后续的地图修改都会使我的指针无效,但这不会发生,因为我已经标记了成员变量const.

我不能像往常一样返回参考,foo需要返回nullptr.

我在做什么安全吗?

c++

7
推荐指数
1
解决办法
824
查看次数

标签 统计

c++ ×1

celleditorlistener ×1

datatable ×1

jsf ×1

primefaces ×1