Jsf 2 JSF-Richfaces,处理提交的表单数据,然后确认继续或取消

Jsf 2 JSF-Richfaces,处理提交的表单数据,然后确认继续或取消,jsf-2,dialog,richfaces,ajax4jsf,confirmation,Jsf 2,Dialog,Richfaces,Ajax4jsf,Confirmation,我想显示一个确认对话框,以便在提交表单时继续或取消保存操作。我有一个带有save按钮的表单,它调用一个action方法在表单中保存数据。 单击“保存”按钮时,将在服务器端读取一个文件,然后保存表单数据。文件中的数据将被合并到表单数据中,然后表单数据将被持久化。我需要表单中的一些值来定义要读取的文件。到目前为止没有问题。当抛出FileNotFoundException或找不到文件中必需的数据时,我想显示一个确认对话框,以继续或取消保存操作,并显示导致的消息 有没有人举过一些例子或者有什么想法来处理

我想显示一个确认对话框,以便在提交表单时继续或取消保存操作。我有一个带有save按钮的表单,它调用一个action方法在表单中保存数据。 单击“保存”按钮时,将在服务器端读取一个文件,然后保存表单数据。文件中的数据将被合并到表单数据中,然后表单数据将被持久化。我需要表单中的一些值来定义要读取的文件。到目前为止没有问题。当抛出FileNotFoundException或找不到文件中必需的数据时,我想显示一个确认对话框,以继续或取消保存操作,并显示导致的消息

有没有人举过一些例子或者有什么想法来处理这个问题?我需要使用a4j吗?谢谢
我正在使用RifcFaces 3.3.3和Seamframework 2.2。

是的,您需要使用a4j

尝试类似的方法(未经测试,但遵循算法):


...
这将显示如何在必要时显示模式面板。
如果没有更多的代码,我无法为您提供更多帮助,但我认为这应该可以帮助您……

是的,您需要使用a4j

尝试类似的方法(未经测试,但遵循算法):


...
这将显示如何在必要时显示模式面板。
如果没有更多的代码,我无法为您提供更多帮助,但我认为这应该会帮助您…

首先,我必须更正我的问题标题。它不是在“处理提交的表单数据”,而是在验证后提交的表单数据

现在是解决办法

例如,我的表格中有以下内容:

  • 一些文件

  • a4j:commandButton用于重新输入字段并执行doSomeStuff()操作

  • 一个隐藏的h:或a4j:命令按钮来提交表单

1-用户点击“假”提交按钮,这是一个a4j:CommandButton

2-Ajax调用更新reRender属性中的字段

3-之后,使用重新排序的字段值执行方法doSomeStuff()

4-最终Javascript将运行以提交表单或不提交表单

表格:


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>  

函数检查消息(成功){
如果(成功=='false')
{
return confirm('是否要提交此表单?')?submitForm():false;
}否则{
submitForm();
}
}
函数submitForm(){
document.getElementById('myForm:save')。单击();
返回false;
}               

首先,我必须更正我的问题标题。它不是在“处理提交的表单数据”,而是在验证后提交的表单数据

现在是解决办法

例如,我的表格中有以下内容:

  • 一些文件

  • a4j:commandButton用于重新输入字段并执行doSomeStuff()操作

  • 一个隐藏的h:或a4j:命令按钮来提交表单

1-用户点击“假”提交按钮,这是一个a4j:CommandButton

2-Ajax调用更新reRender属性中的字段

3-之后,使用重新排序的字段值执行方法doSomeStuff()

4-最终Javascript将运行以提交表单或不提交表单

表格:


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>  

函数检查消息(成功){
如果(成功=='false')
{
return confirm('是否要提交此表单?')?submitForm():false;
}否则{
submitForm();
}
}
函数submitForm(){
document.getElementById('myForm:save')。单击();
返回false;
}               

我认为还应该使用4j/ajax调用。说清楚。。。我需要一个假保存(提交)按钮来触发ajax调用,该调用使用填充的表单数据运行文件I/O操作方法。当文件操作成功完成后,我想在当前视图上调用JavaScript来自动提交表单,或者请求提交或取消表单提交。你能解释一下你的代码是什么意思吗?当我点击CMD按钮时发生了什么?我认为检查第一个条件,而不是执行modalPanel或其他东西。。。但我首先需要doSomeStuff,检查条件,然后确认提交……我认为还应该使用4J/ajax调用。说清楚。。。我需要一个假保存(提交)按钮来触发ajax调用,该调用使用填充的表单数据运行文件I/O操作方法。当文件操作成功完成后,我想在当前视图上调用JavaScript来自动提交表单,或者请求提交或取消表单提交。你能解释一下你的代码是什么意思吗?当我点击CMD按钮时发生了什么?我认为检查第一个条件,而不是执行modalPanel或其他东西。。。但我需要先做一些东西,检查条件,然后确认提交。。。
<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>