Использование события onclick для захвата значений ячейки в таблице данных -primefaces - PullRequest
0 голосов
/ 16 сентября 2018

Я пытаюсь зафиксировать значение ячейки в таблице данных каждый раз, когда пользователь щелкает ее и обновляет в текстовом поле. Я сослался на этот URL-адрес витрины: https://www.primefaces.org/showcase/ui/data/datatable/edit.xhtml

Событие CellEdit не работает для меня, так как я не хочу, чтобы пользователь редактировал ячейку и, следовательно, отключил текстовое поле ввода для ячейки. Поскольку нет события для выбора ячейки, как я могу заставить его работать, используя javscript / jquery или что-нибудь еще.

<h:form id="form">
            <p:dataTable id="cars2" var="car" value="#{dtEditView.cars2}"
                editable="true" editMode="cell" widgetVar="cellCars">
                <f:facet name="header">
           Cell Editing with Click and RightClick
       </f:facet>

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

                <p:column headerText="Id">
                    <p:cellEditor>
                        <f:facet name="output">

                                <h:outputText value="#{car.id}" />

                        </f:facet>
                        <f:facet name="input">
                            <p:inputText id="modelInput" value="#{car.id}" disabled="true"
                                style="width:96%" />
                        </f:facet>
                    </p:cellEditor>
                </p:column>

                <p:column headerText="Year">
                    <p:cellEditor>

                        <f:facet name="output">

                                <h:outputText value="#{car.year}" />

                        </f:facet>
                        <f:facet name="input">
                            <p:inputText value="#{car.year}" disabled="true"
                                style="width:96%" label="Year" />
                        </f:facet>
                    </p:cellEditor>
                </p:column>
            </p:dataTable>

            <p:contextMenu for="cars2" widgetVar="cMenu">
                <p:menuitem value="Edit Cell" icon="ui-icon-search"
                    onclick="PF('cellCars').showCellEditor();return false;" />
                <p:menuitem value="Hide Menu" icon="ui-icon-close"
                    onclick="PF('cMenu').hide()" />
            </p:contextMenu>


        </h:form>

Здесь я хочу, чтобы значения ячеек обновлялись, как только пользователь нажимает на любую ячейку. Эта текстовая область присутствует в той же форме, что и таблица данных.

            <p:panel style="width:56%;height:56%;">
                <p:inputTextarea id="notesTextArea" value="#{tree.result}"/>
                </p:inputTextarea>
            </p:panel>

Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...