【问题标题】:How to show this Success message on popup如何在弹出窗口中显示此成功消息
【发布时间】:2010-09-28 02:17:10
【问题描述】:

我有这段代码。

在我的数据库添加消息后完美显示,但我的网格没有显示更新的结果。如果我坚持

return true;

当我单击提交按钮时,我会立即弹出窗口然后添加到数据库中?这在网格中显示了我的更新结果。

【问题讨论】:

    标签: javascript jquery asp.net-mvc


    【解决方案1】:

    如果您在提交函数结束时返回 true,那么浏览器将转到表单的 action 属性中的 url。如果您在 ajax 调用中处理了表单数据,我认为您应该始终返回 false。您需要获取更新的网格作为 ajax 成功方法的一部分。

    你不能在弹出 ajax 的同时仍然让表单以正常方式提交。

    $(function () {
              $('#form4').submit(function () {
                  ...    
                  $.ajax({
                     ...
                      success: function (result) {
                          ...
                          // update grid
                          grid_container = $("#grid").html('');
                          $("<table>").appendTo(grid_container);
                          for (ii = 0; ii < result.grid.length; ++ii) {
                             tr = $("<tr>").appendTo(table);
                             for (jj=0; jj < result.grid[ii].length; ++ii) {
                                 td = $("<td>").text(result.grid[ii][jj]).appendTo(tr);
                             }
                          }
    
                          // show success message
                          alert('Saved NewServiceTypeCategory Successfully. Thank you!');
                      }
                  });
                  return false;
              });
          });
    

    现在您要做的就是让您的服务器端 post 处理程序返回带有网格数据的 XML。

    【讨论】:

      【解决方案2】:

      AJAX 请求是异步的,因此它会在回调完成之前完成表单提交例程,这可能解释了您得到的结果。我认为可能有一个异步设置可以关闭,以便操作/回调必须首先完成。

      【讨论】:

      • 谢谢布赖恩,该怎么做?你能告诉我吗?
      • 检查一下:第一个选项有一个异步属性,你设置为 false。在此处阅读更多信息:api.jquery.com/jQuery.ajax 请注意,这可能会产生影响。您可能需要考虑重构代码以通过回调传递真/假...
      【解决方案3】:

      根据您的代码,据我所知,您无法加载新数据。

      return true; 加载新数据的原因是因为submit 事件成功执行了它的默认操作,即提交到服务器并刷新页面。

      另一方面,return false; 阻止了此操作(包括刷新页面),而是只运行 XHR。

      你可以做的是:

      返回新数据作为 XHR 并进行相应的解析。

      【讨论】:

      • 请告诉我什么是 XHR?
      猜你喜欢
      • 2015-05-14
      • 1970-01-01
      • 2020-08-26
      • 2013-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-25
      相关资源
      最近更新 更多