起初我必須糾正我的問題標題。它是而不是繼續「處理已提交表格數據」,但表格數據將經過一些驗證後提交。
現在的解決方案。
例如我已經按照在我的形式:
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