我怎样才能提交 tr:inputText javascript 当按下输入



目前,我的tr:inputText只有在按下按钮后才能提交。当我点击输入文本上的输入按钮时,我正在尝试让它也提交。它似乎试图倾听,但事实并非如此。任何帮助将不胜感激。

起初,我试图使用内置的特立尼达功能来实现这一点,但现在我正在尝试使用 JavaScript 来实现这一点。我该怎么办?

<SCRIPT LANGUAGE="JavaScript">		
		    function enter(event) {
		        var acctNumber = document.getElementById('acctNumber');
		        acctNumber.addEventListener('keypress', function enter(event))
		         {
		            if (event.keyCode == 13) {
			            
		                   <!-- document.getElementById('Search').click();-->
		                 <!--   document.send.submit();    -->
		                 submitForm();
		                }
		        }
		    }
			function submitForm() {
				$('#send').submit();
			}
			
			</SCRIPT>
			
	<ui:composition template="#{processPanelLayoutManager.layoutTemplate}">
		<ui:define name="processTitle">		
		</ui:define>
		<ui:define name="processPanel">
			<tr:form usesUpload="true"	id="send" >
				<trh:tableLayout width="100%" cellPadding="10" borderWidth="0"
					id="Table">
					<trh:rowLayout>
						<trh:cellFormat columnSpan="4">
							<ocau:inlineMessage />
						</trh:cellFormat>
					</trh:rowLayout>
									
					<tr:panelBox styleClass="roundedPanelPrimary">
						 <trh:rowLayout halign="center">
							<trh:cellFormat halign="center">								
								<tr:inputText styleClass="tabdata" contentStyle="normalContent"
								   id= "acctNumber"
									label="Account Number"
									type="enter" 
									value="#{fraudSearch.fraudCustomerReqtUIModelBean.accountNumber}"
								>
	                               
							   </tr:inputText>
							</trh:cellFormat>
							
							<trh:cellFormat halign="left">
								<tr:commandButton text="Search" id="Search"
									action="#{fraudSearch.getIBSNotesData}" styleClass="Button"
									halign="center"
								
									>
									</tr:commandButton>
							</trh:cellFormat>							
						</trh:rowLayout>						
					</tr:panelBox>
					<tr:panelBox styleClass="roundedPanelPrimary"
						rendered="#{fraudSearch.displaySearchResults}">
						<trh:tableLayout cellPadding="10" borderWidth="0" id="Table"
							width="100%">
							<trh:rowLayout>
								<tr:panelTabbed position="above" inlineStyle="width:auto">
									<tr:showDetailItem text="IBS Data Extract" id="IBSDataExtract"
										immediate="true">
										<ui:include
											src="/pages/recovery/fraud/displayFraudRPAIBSDataExtract.jspx">
										</ui:include>
									</tr:showDetailItem>
								 <!--  
									<tr:showDetailItem text="Non-Monetary Data" id="IBSNonMonData"
										immediate="true">
										<ui:include
											src="/pages/recovery/fraud/displayFraudRPANonMonetaryData.jspx">
										</ui:include>
									</tr:showDetailItem>
									-->
								</tr:panelTabbed>
								
								
								
								
							</trh:rowLayout>
						</trh:tableLayout>
					</tr:panelBox>
				</trh:tableLayout>
			</tr:form>
			
		</ui:define>
	</ui:composition>
	<script language="javascript">
		document.forms["send"].focus();
	</script>

您的事件侦听器似乎语法不正确; 在事件参数之后而不是块的右大括号之后有第二个括号。

脚本标签中也有 HTML 注释 - 将它们更改为与 JS 兼容的注释。

我已经在这个代码笔中修改了这一点,事件侦听器正在工作。

使用您的原始脚本:

<SCRIPT LANGUAGE="JavaScript">		
		    function enter(event) {
		        var acctNumber = document.getElementById('acctNumber');
		        acctNumber.addEventListener('keypress', function enter(event)
		         {
		            if (event.keyCode == 13) {
			            
		                 // document.getElementById('Search').click();
		                 // document.send.submit();  
		                 submitForm();
		                }
		        });
		    }
			function submitForm() {
				$('#send').submit();
			}
			
			</SCRIPT>

此外,我建议您研究一些事情以避免将来出现此类问题:

  • 检查控制台日志;此错误非常明显
  • 尽可能使用严格相等 (===( 以避免不必要的错误
  • 通过短绒运行代码

相关内容

  • 没有找到相关文章

最新更新