2

我有一个Spring Mvc应用程序,我希望当用户单击提交按钮并返回到显示jquery 对话框的视图时,如“事务成功”或对话框中的任何错误消息。

目前,如果交易成功或任何错误我设置model.addAttribute('ServerResponse', 'Transaction Wassuccess')model.addAttribute('ServerResponse',e) ,一旦处理完成,表单到达控制器。

我想将“ ServerResponse ”返回到对话框中,但是我不知道将jquery附加到的最佳事件是什么。我不想创建 Web 服务,因为我已经在使用发布到服务器的帖子,并且万一javascript已关闭。

一旦 ServerResponse 元素具有值,有人可以告诉我用 ServerResponse 显示对话框的最佳方式是什么。最初加载表单时,ServerResponse 应该为空。

希望我对我在这里想要实现的目标足够清楚。

已编辑

这就是我正在做的,但是当我从服务器返回它实际上显示在创建 div 的点时,该函数没有执行。

<div id="dialog" title="Server Response">
            <p>
                <span class="ui-icon ui-icon-info" style="float: left; margin: 0 7px 50px 0;"></span>
                ${results}
            </p>

        </div>

 $(function() {

         var serverResponse = $('#serverResponse').val().length;

            alert(serverResponse);

         if(serverResponse != 0){

             alert(serverResponse);
             $("#dialog").dialog();              
         }

      });
4

1 回答 1

1

使用您在视图层中使用的任何模板语言将消息从模型输出到 div。就像是:

<div id="serverResponse"><%= serverResponse %></div>

相应地设置样式,然后在该页面上的 jquery(使用 jquery UI)中执行以下操作:

$(function() {
  $("#serverResponse").dialog();
}

然后做任何你想要的造型。如果没有 javascript,将显示普通 div,如果有,则将其拉入对话框。您可以使用noscript重复的内容来消除内容的瞬间闪现,然后再将其拉入对话框。

于 2012-10-15T02:41:08.517 回答