有幾個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觸發點擊事件? –
編號任何參考資料? –