Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf a4j重新渲染器inputText onSubmit事件_Jsf_Facelets_Ajax4jsf - Fatal编程技术网

Jsf a4j重新渲染器inputText onSubmit事件

Jsf a4j重新渲染器inputText onSubmit事件,jsf,facelets,ajax4jsf,Jsf,Facelets,Ajax4jsf,我尝试了不同的组合来重新播放结果窗格 它可以很好地与 <h:form><a4j:region> <h:inputText value="#{myBean.keyword}"> <a4j:support event="onchange" reRender="results" eventsQueue="search" oncomplete="initResults();" /> </h:inputText> </a4j:region&

我尝试了不同的组合来重新播放结果窗格

它可以很好地与

<h:form><a4j:region>
<h:inputText value="#{myBean.keyword}">
<a4j:support event="onchange" reRender="results" eventsQueue="search" oncomplete="initResults();" />
</h:inputText>
</a4j:region>
</h:form>

但我只想在按下enter键时提交它。所以我试过了

<h:form reRender="results" eventsQueue="search" oncomplete="initResults();"><a4j:region>
<h:inputText value="#{myBean.keyword}"/>
</a4j:region>
</h:form>

返回一个空结果,即使它不应该是空的

<a4j:region>
<h:form>
<a4j:support event="onsubmit" reRender="results" eventsQueue="search" oncomplete="initResults();" />
<h:inputText value="#{myBean.keyword}"/>
</h:form>
</a4j:region>

正在重新加载整个页面,而不是仅加载结果面板(但显示的结果)。我甚至尝试在最后一个示例中添加
。[编辑:确定返回false只是被AJAX支持调用覆盖]

当按下“回车”键时,如何使输入文本字段重新输入。(因此表单已提交)但不想提交表单

编辑:还是我的错,我太简化了这里的示例代码。我还有一个与a4j相同的元素:相同表单中的支持,因为我删除了a4j标记,并将onchange事件更改为表单提交,所以它可以正常工作

<h:selectOneMenu value="#{myBean.selectedMetaCategory}" onchange="this.form.submit();">
  <a4j:support ...
  <f:selectItems value="#{myBean.metaSelectItems}"/>
</h:selectOneMenu>

试着这样做:

<a4j:region>
<a4j:form onsubmit="reRenderResults();">
<h:inputText value="#{myBean.keyword}"/>
</a4j:form>
<a4j:jsFunction name="reRenderResults" reRender="results" eventsQueue="search" oncomplete="initResults();" />
</a4j:region>

试着这样做:

<a4j:region>
<a4j:form onsubmit="reRenderResults();">
<h:inputText value="#{myBean.keyword}"/>
</a4j:form>
<a4j:jsFunction name="reRenderResults" reRender="results" eventsQueue="search" oncomplete="initResults();" />
</a4j:region>


是否采用了与我在上面的编辑中所述不同的方式,但由于我的问题中缺少信息,我将您的答案标记为正确。是否采用了与我在上面的编辑中所述不同的方式,但由于我在问题中缺少信息,我将您的答案标记为正确。