起初我必须纠正我的问题标题。它是而不是继续“处理已提交表格数据”,但表格数据将经过一些验证后提交。
现在的解决方案。
例如我已经按照在我的形式:
1-用户点击 '假' 提交按钮其是A4J:commandButtton,
2-在重新呈现Ajax调用更新字段属性
3-之后,方法doSomeStuff()用重新输入的字段值执行
4-最后,Javascript将运行提交表单或不提交表单。
形式:
<h:form id="myForm">
<h:inputText id="name" value="#{personHome.person.name}"/>
<h:inputText id="surname" value="#{personHome.person.surname}"/>
<a:commandButton value="Save" reRender="name, surname"
action="#{personHome.doSomeStuff()}"
oncomplete="return checkMessage('#{personHome.success}')"
id="a4jSave" />
<h:commandButton id="save" value="Save"
action="#{personHome.persist}"
style="visibility:hidden" />
</h:form>
的JavaScript:
<script language="javascript">
function checkMessage(success) {
if(success =='false')
{
return confirm('Do you want to submit this form?') ? submitForm() : false;
} else {
submitForm();
}
}
function submitForm() {
document.getElementById('myForm:save').click();
return false;
}
</script>
我觉得也A4J/Ajax调用应该被使用。要清楚...我需要一个假保存(提交)按钮来触发一个使用填充表单数据运行文件I/O操作方法的ajax调用。当文件操作成功完成后,我想调用当前视图上的JavaScript来自动提交表单或要求提交或取消表单提交。 – Yakari
你能解释一下你的代码是什么意思?当我点击cmdButton时会发生什么?我认为,检查首先条件恩比执行modalPanel或someStuff ...但我需要先doSomeStuff,检查条件,然后确认提交... – Yakari