我的表格由以下元素组成:
- icefaces 文本字段输入搜索条件。
- icefaces 命令按钮(查找)进行部分提交并使用匹配用户的新列表填充 div。
- 其他两个 icefaces 文本字段,在提交整个表单时,我需要它们的值。
要求:我希望当用户在文本输入字段中按下回车键时,找到按钮被点击(当按钮被鼠标点击时,它会自动部分提交)
所以这就是我尝试的:
<ice:inputText id="recipient" value="#{myBean.searchValue}" size="60"
onkeydown="handleEnter(event,this.form);" >
</ice:inputText>
<ice:commandButton id="find" value="Find" action="#{myBean.findEmployees}" partialSubmit="true"
>
<f:ajax execute="@this" render="employees" />
</ice:commandButton>
JS方法:
function handleEnter(event,form){ if (event.keyCode == 13){ document.getElementById(form.name+':find').click(); } }
生成的冰命令按钮:
<input type="submit" value="Find" style="width: 60px;" onfocus="setFocus(this.id);" onclick="iceSubmitPartial(form, this, event);return false;" onblur="setFocus('');" name="myForm:find" id="myForm:find" class="iceCmdBtn findButton">
问题:当用户按下回车键时,会调用查找按钮,但会提交整个表单,因此其他两个文本字段会出现必需的验证错误。
请告知为什么要提交整个表格,以及如何处理此类问题。