用回车键保存p:inplace

时间:2019-05-08 10:16:23

标签: primefaces

我添加了素数输入文本,并通过双击“仅准备就绪”文本使其具有只读和编辑文本。仅当我在编辑器模式下单击对勾图标时,inplace事件才会触发ajax侦听器。

我将其用作下面链接中primefaces展示柜的参考

https://www.primefaces.org/showcase/ui/input/inplace.xhtml

<p:inplace id="stackSetDesc" editor="true">
  <p:ajax event="save" listener="#{stackEditBean.updateStackSet()}"                         process="@this" update="@form" />
  <p:inputText value="#{stackEditBean.stackSetDesc}" required="true" label="text">                          
</p:inputText>
</p:inplace>

如何在编辑文本后通过调用Enter按钮来触发相同的就地侦听器方法

2 个答案:

答案 0 :(得分:0)

我通过以下代码获得了应有的行动

  <p:inplace id="stackSetDesc" editor="true">
                                    <p:ajax event="save" listener="#{stackEditBean.updateStackSet()}"
                                        process="@this" update="@form"
                                        onstart="PF('loadWidget').show();"
                                        onsuccess="PF('loadWidget').hide();" />
                                    <p:inputText value="#{stackEditBean.stackSetDesc}"
                                        required="true" label="text"
                                        requiredMessage="Description cannot be empty , Please Enter Name"
                                        onkeypress="if (event.keyCode == 13) { saveStackSetID(); return false; }" />
                                </p:inplace>
                                <p:remoteCommand name="saveStackSetID" update="stackSetDesc"
                                    actionListener="#{stackEditBean.updateStackSet()}"
                                    onstart="PF('loadWidget').show();"
                                    oncomplete="PF('loadWidget').hide();">
    </p:remoteCommand>

答案 1 :(得分:0)

我这样解决了

<p:treeNode>
    <p:inplace widgetVar="inplace_#{node.rowKey}" editor="true">
        <p:inputText value="#{category.categoryName}" required="true" label="text" onkeydown="if(event.keyCode==27) {PF('inplace_#{node.rowKey}').cancel(); return false;} if(event.keyCode==13) {PF('inplace_#{node.rowKey}').save(); return false;}" />
    </p:inplace>
</p:treeNode>