有几个primefaces inputtext控件和commandbuttons在一个单一的形式。按下一个输入文本上的回车键需要激活相关命令按钮的点击。我如何实现这一功能?我甚至尝试过使用onkeydown,但是找不到方法。onkeydown事件触发单击一个命令按钮
回答
你可以试试(你需要找到检测自己进入的JavaScript键)
XHTML:
<p:input onkeydown="test()" />
<p:commandButton styleClass="foo" />
的javascript:
function test(){
$('.foo').click();
}
您还可以看到: How-to-programmatically-trigger-onclick-event and How-to-refer-to-a-jsf-component-id-in-jquery
非常感谢。这工作完美。 –
不客气! –
我喜欢添加我的代码,这是由RongNK指导的成功,但在评论中,大量的文本是不允许的。 –
根据RongNK的指导,我改变了我的代码,如下所示,它完美地服务于我的目的。
添加了CDATA以包含JavaScript。 用于\\逃生:在JSF的ID精铸件
<h:form id="frmEn">
<script type="text/javascript" language="JavaScript">
//<![CDATA[
function forDx(e) {
if (e.keyCode === 13) {
$('#frmEn\\:btnDx').click();
return false;
} else {
return true;
}
}
function forIx(e) {
if (e.keyCode === 13) {
$('#frmEn\\:btnIx').click();
return false;
} else {
return true;
}
}
function forMx(e) {
if (e.keyCode === 13) {
$('#frmEn\\:btnMx').click();
return false;
} else {
return true;
}
}
function forRx(e) {
if (e.keyCode === 13) {
$('#frmEn\\:btnRx').click();
return false;
} else {
return true;
}
}
// ]]>
</script>
<p:panel header="Encounter" >
<h:panelGrid columns="2" >
<p:panel header="Encounter Details" >
<h:panelGrid columns="4" >
<h:outputLabel value="Tests" ></h:outputLabel>
<p:autoComplete id="txtIx" value="#{encounterController.test }" completeMethod="#{encounterController.completeIx}" styleClass="defaultTxt" onkeydown="return forIx(event)" >
</p:autoComplete>
<h:commandButton id="btnIx" value="Add" action="#{encounterController.addTest()}">
<f:ajax execute="btnIx txtIx" render="tblIx" />
</h:commandButton>
<p:dataTable value="#{encounterController.ecIxs }" var="ix" id="tblIx" >
<p:column >
<f:facet name="header" >
<h:outputLabel value="Tests"/>
</f:facet>
<h:outputLabel value="#{ix.concept.name}"></h:outputLabel>
</p:column>
</p:dataTable>
<h:outputLabel value="Diagnosis" ></h:outputLabel>
<p:autoComplete id="txtDx" value="#{encounterController.diagnosis }" completeMethod="#{encounterController.completeDx}" styleClass="defaultTxt" onkeydown="return forDx(event)" />
<h:commandButton id="btnDx" value="Add" action="#{encounterController.addDiagnosis()}" >
<f:ajax execute="btnDx txtDx" render="tblDx txtDx" />
</h:commandButton>
<p:dataTable value="#{encounterController.ecDxs }" var="dx" id="tblDx" >
<p:column >
<f:facet name="header" >
<h:outputLabel value="Diagnoses"/>
</f:facet>
<h:outputLabel value="#{dx.concept.name}"></h:outputLabel>
</p:column>
</p:dataTable>
<h:outputLabel value="Treatment" ></h:outputLabel>
<p:autoComplete id="txtRx" value="#{encounterController.rx}" completeMethod="#{encounterController.completeRx}" styleClass="defaultTxt" onkeydown="return forRx(event)">
</p:autoComplete>
<h:commandButton id="btnRx" value="Add" action="#{encounterController.addRx()}">
<f:ajax execute="btnRx txtRx" render="tblRx" />
</h:commandButton>
<p:dataTable value="#{encounterController.ecRxs }" var="rx" id="tblRx" >
<p:column >
<f:facet name="header" >
<h:outputLabel value="Treatment"/>
</f:facet>
<h:outputLabel value="#{rx.concept.name}"></h:outputLabel>
</p:column>
</p:dataTable>
<h:outputLabel value="Plan" ></h:outputLabel>
<p:autoComplete id="txtMx" value="#{encounterController.plan }" completeMethod="#{encounterController.completeMx}" styleClass="defaultTxt" onkeydown="return forMx(event)">
</p:autoComplete>
<h:commandButton id="btnMx" value="Add" action="#{encounterController.addPlanOfAction() }">
<f:ajax execute="btnMx txtMx" render="tblMx" />
</h:commandButton>
<p:dataTable value="#{encounterController.ecMxs}" var="mx" id="tblMx" >
<p:column >
<f:facet name="header" >
<h:outputLabel value="Plan"/>
</f:facet>
<h:outputLabel value="#{mx.concept.name}"></h:outputLabel>
</p:column>
</p:dataTable>
<h:outputLabel value="Details" ></h:outputLabel>
<h:inputTextarea value="#{encounterController.current.comments}" styleClass="defaultTxtArea"></h:inputTextarea>
<h:outputLabel value="" ></h:outputLabel>
<h:outputLabel value="" ></h:outputLabel>
<h:outputLabel value="Charges" ></h:outputLabel>
<h:inputTextarea value="#{encounterController.current.charge}" styleClass="defaultTxt"></h:inputTextarea>
<h:outputLabel value="" ></h:outputLabel>
<h:outputLabel value="" ></h:outputLabel>
<h:outputLabel value=""></h:outputLabel>
<h:commandButton value="Save" action="#{encounterController.saveSelected()}"></h:commandButton>
<h:outputLabel value="" ></h:outputLabel>
<h:outputLabel value="" ></h:outputLabel>
</h:panelGrid>
</p:panel>
<p:panel header="Patient Details" >
<h:panelGrid columns="2" >
<h:outputLabel value="Name"></h:outputLabel>
<h:outputLabel value="#{encounterController.current.patient.person.name}"></h:outputLabel>
<h:outputLabel value="Age"></h:outputLabel>
<h:outputLabel value="#{encounterController.current.patient.person.age}"></h:outputLabel>
<h:outputLabel value="Date of Birth"></h:outputLabel>
<h:outputLabel value="#{encounterController.current.patient.person.dob}">
<f:convertDateTime pattern="dd MMMM yyyy" />
</h:outputLabel>
<h:outputLabel value="Sex"></h:outputLabel>
<h:outputLabel value="#{encounterController.current.patient.person.sex.name}"></h:outputLabel>
<h:outputLabel value="Address"></h:outputLabel>
<h:outputLabel value="#{encounterController.current.patient.person.address}"></h:outputLabel>
</h:panelGrid>
</p:panel>
</h:panelGrid>
</p:panel>
</h:form>
- 1. 单选按钮单击触发事件
- 2. JQuery的/ JavaScript的 - 触发按钮从另一个按钮单击事件单击
- 3. 单击按钮时要触发的事件也会触发另一个事件
- 4. 按钮单击事件后触发Response.Redirect
- 5. 如何触发Bootgrid命令按钮的点击事件
- 6. 用onkeydown事件触发一个函数
- 7. Html按钮单击事件不会触发单选按钮
- 8. 上一个jQuery对话框触发按钮单击事件
- 9. 单击按钮时触发一个事件
- 10. Kendo Grid自定义命令按钮单击事件不会触发
- 11. 提交表单时触发点击事件按钮被触发
- 12. ng按钮事件不会触发按钮单击?
- 13. jQuery的负载事件不触发asp.net按钮单击事件
- 14. 下拉选择更改事件触发按钮单击事件
- 15. 使onKeyDown触发HTML按钮的onClick事件
- 16. 触发asp:按钮的点击事件,通过点击另一个asp:按钮
- 17. Javascript onkeydown事件只触发一次?
- 18. 点击按钮时未触发事件
- 19. 按钮点击事件不会触发
- 20. 按钮点击事件未被触发
- 21. Jquery UI对话框按钮触发多个单击事件
- 22. MS-Access 2003触发命令按钮单击的追加查询
- 23. 单击按钮触发多个按钮单击
- 24. 触发按钮单击
- 25. HTML onKeyDown - 事件调用函数和按钮单击
- 26. 按钮点击事件触发fabricjs中的每个事件
- 27. 一个按钮发射另一个按钮点击事件
- 28. 按钮单击事件不会触发并发生错误
- 29. 在datepicker中点击关闭按钮时触发一个事件
- 30. 按钮单击导致另一个按钮触发
您是否尝试过使用jQuery触发点击事件? –
编号任何参考资料? –