我正在使用 javascript 读取一个 xml 文件,然后我需要提交我的表单,以便它调用我的 JSF 处理程序中的特定方法。通常这可以在用户点击按钮时通过像这样的 actionlistener 在 jsp 上完成:
<h:commandLink styleClass="button" action="#{myHandler.outcome}" actionListener="#{myHandler.doNext}">
<span><h:outputText value="#{text.button_submit}" /></span> </h:commandLink>
我不确定如何从 javascript 在处理程序中调用上面的“doNext”之类的方法。我不能做一个简单的:
document.form.submit();
然后它会重复我已经完成的处理。我想从 xml 文件中读取值,然后在处理程序中调用特定方法。非常感谢任何想法。
最佳答案
我找到了解决办法。我在我的 jsp 中添加了一个隐藏按钮,例如:
<p id="hiddenButton" style="display:none;" >
<h:commandLink id="hiddenRegButton" styleClass="button" action="#{myHandler.doNext}" />
</p>
在我的 javascript 中,我使用 jQuery 执行点击,这导致我的处理程序中的“doNext”方法被执行。
jQuery('#hiddenRegButton').click();
这比我想象的要容易。
关于Javascript 调用 JSF 处理程序方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2502319/