Locale

Change the locale of the datepicker, schedule and client side validation messages.

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Edit

Data displayed on datatable can be edited at row or cell level.

Row Editing
CodeNameStatusPrice
3746daa6
Bamboo Watch
INSTOCK
$65.00
20c9dee2
Black Watch
INSTOCK
$72.00
645a177e
Blue Band
LOWSTOCK
$79.00
18fb3643
Blue T-Shirt
INSTOCK
$29.00
6cf202a4
Bracelet
INSTOCK
$15.00
2d5084e1
Brown Purse
OUTOFSTOCK
$120.00
d0c08790
Chakra Bracelet
LOWSTOCK
$32.00
f633b99d
Galaxy Earrings
INSTOCK
$34.00
55cf6001
Game Controller
LOWSTOCK
$99.00
9c965c7e
Gaming Set
INSTOCK
$299.00
Cell Editing with Click and RightClick
CodeNameStatusPrice
3cd94c1a
Bamboo Watch
INSTOCK
$65.00
47279ca8
Black Watch
INSTOCK
$72.00
b0e09de2
Blue Band
LOWSTOCK
$79.00
21966169
Blue T-Shirt
INSTOCK
$29.00
ea428338
Bracelet
INSTOCK
$15.00
59c68807
Brown Purse
OUTOFSTOCK
$120.00
7d91dd5a
Chakra Bracelet
LOWSTOCK
$32.00
549a376c
Galaxy Earrings
INSTOCK
$34.00
15c4225b
Game Controller
LOWSTOCK
$99.00
c2f91c82
Gaming Set
INSTOCK
$299.00
Cell Editing with Double Click Event (dblclick)
CodeNameStatusPrice
6015da46
Bamboo Watch
INSTOCK
$65.00
7f49aff8
Black Watch
INSTOCK
$72.00
5f9fa856
Blue Band
LOWSTOCK
$79.00
b1640c36
Blue T-Shirt
INSTOCK
$29.00
cf62c80d
Bracelet
INSTOCK
$15.00
cbe67640
Brown Purse
OUTOFSTOCK
$120.00
082f6347
Chakra Bracelet
LOWSTOCK
$32.00
90880259
Galaxy Earrings
INSTOCK
$34.00
ca47356a
Game Controller
LOWSTOCK
$99.00
71e2c9bf
Gaming Set
INSTOCK
$299.00

<h:form id="form">
    <p:growl id="msgs" showDetail="true"/>

    <div class="card">
        <h5>Row Editing</h5>
        <p:dataTable id="products1" var="product" value="#{dtEditView.products1}" editable="true"
                     style="margin-bottom:20px">

            <p:ajax event="rowEdit" listener="#{dtEditView.onRowEdit}" update=":form:msgs"/>
            <p:ajax event="rowEditCancel" listener="#{dtEditView.onRowCancel}" update=":form:msgs"/>

            <p:column headerText="Code">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.code}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText id="modelInput" value="#{product.code}" style="width:100%"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Name">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.name}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText value="#{product.name}" style="width:100%" label="Name"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Status">
                <p:cellEditor>
                    <f:facet name="output"><h:outputText value="#{product.inventoryStatus}"/></f:facet>
                    <f:facet name="input">
                        <p:selectOneMenu value="#{product.inventoryStatus}" style="width:100%">
                            <f:selectItems value="#{dtEditView.inventoryStatusList}" var="status"
                                           itemLabel="#{status.text}" itemValue="#{status}"/>
                        </p:selectOneMenu>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Price">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.price}">
                            <f:convertNumber type="currency" currencySymbol="$"/>
                        </h:outputText>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputNumber value="#{product.price}" style="width:100%" label="Price" symbol="$"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column style="width:6rem">
                <p:rowEditor editTitle="Edit Row" cancelTitle="Cancel Edit" saveTitle="Save Row"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Cell Editing with Click and RightClick</h5>
        <p:dataTable id="products2" var="product" value="#{dtEditView.products2}" editable="true"
                     editMode="cell" widgetVar="cellProducts">

            <p:ajax event="cellEdit" listener="#{dtEditView.onCellEdit}" update=":form:msgs"/>

            <p:column headerText="Code">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.code}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText id="modelInput2" value="#{product.code}" style="width:100%"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Name">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.name}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText value="#{product.name}" style="width:100%" label="Name"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Status">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.inventoryStatus}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:selectOneMenu value="#{product.inventoryStatus}" style="width:100%">
                            <f:selectItems value="#{dtEditView.inventoryStatusList}" var="status"
                                           itemLabel="#{status.text}" itemValue="#{status}"/>
                        </p:selectOneMenu>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Price">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.price}">
                            <f:convertNumber type="currency" currencySymbol="$"/>
                        </h:outputText>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputNumber value="#{product.price}" style="width:100%" label="Price" symbol="$"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Cell Editing with Double Click Event (dblclick)</h5>
        <p:dataTable id="products3" var="product" value="#{dtEditView.products3}" editable="true" editMode="cell"
                     widgetVar="cellCars2" editInitEvent="dblclick" style="margin-bottom:20px">

            <p:ajax event="cellEdit" listener="#{dtEditView.onCellEdit}" update=":form:msgs"/>

            <p:column headerText="Code">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.code}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText id="modelInput3" value="#{product.code}" style="width:100%"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Name">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.name}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputText value="#{product.name}" style="width:100%" label="Name"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Status">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.inventoryStatus}"/>
                    </f:facet>
                    <f:facet name="input">
                        <p:selectOneMenu value="#{product.inventoryStatus}" style="width:100%">
                            <f:selectItems value="#{dtEditView.inventoryStatusList}" var="status"
                                           itemLabel="#{status.text}" itemValue="#{status}"/>
                        </p:selectOneMenu>
                    </f:facet>
                </p:cellEditor>
            </p:column>

            <p:column headerText="Price">
                <p:cellEditor>
                    <f:facet name="output">
                        <h:outputText value="#{product.price}">
                            <f:convertNumber type="currency" currencySymbol="$"/>
                        </h:outputText>
                    </f:facet>
                    <f:facet name="input">
                        <p:inputNumber value="#{product.price}" style="width:100%" label="Price" symbol="$"/>
                    </f:facet>
                </p:cellEditor>
            </p:column>
        </p:dataTable>
    </div>

    <p:contextMenu for="products2" widgetVar="cMenu">
        <p:menuitem value="Edit Cell" icon="pi pi-search"
                    onclick="PF('cellProducts').showCellEditor();return false;"/>
        <p:menuitem value="Hide Menu" icon="pi pi-times" onclick="PF('cMenu').hide()"/>
    </p:contextMenu>
</h:form>