【问题标题】:Ajax refresh messes up jqModal functionalityAjax 刷新弄乱了 jqModal 功能
【发布时间】:2009-09-02 15:48:28
【问题描述】:

我正在尝试在我的 .net/mvc 应用程序中使用 jqModal 来执行简单的 jquery 模态弹出窗口。我有一个表格,其中列出了记录,并有一个“编辑”按钮来弹出一个模式对话框来进行编辑。当我提交时,我隐藏模式弹出窗口并使用 .ajax() 方法刷新下面的表格列表。

但是,现在当我点击“编辑”页面时,jqModal 没有触发,而是直接进入我的编辑页面(而不是模式弹出窗口)。

我尝试在 ajax 回调之后重新注入 jqModal 脚本,但这也不起作用。任何帮助表示赞赏!!!

$.ajax(
{
    type: "GET",
    url: "HomePage/ViewTimelineFeatures",
    dataType: "html",
    success: function(result) {
            $("myDiv").html(result);
            // Now re-initialize jqModals here doesn't work...
        }
     });

【问题讨论】:

    标签: ajax asp.net-mvc jqmodal


    【解决方案1】:

    您必须在更新 html 后再次添加触发器。我遇到了同样的问题。

    当您调用 $("#blah").jqmodal... 时,它会在 .jqmodal 类上设置触发器以在模态中加载您的内容。我假设你正在用ajax加载这些?所以像:

    $("#someDiv").jqModal({ajax:'@href'});
    

    我对您上面的 ajax 代码有点困惑,这是在保存您编辑的项目吗?这通常不是get,而是put。无论如何,看起来您使用更新的数据渲染表并替换现有数据。 之后

    $("myDiv").html(结果);

    你需要

    $("#someDiv").jqmAddTrigger(".jqModal");
    

    在您的编辑链接上再次添加触发器(假设您首先使用 .jqModal)如果您想粘贴一些 html/ajax 代码,我可以验证这一点。

    【讨论】:

      猜你喜欢
      • 2017-01-06
      • 2021-02-28
      • 1970-01-01
      • 1970-01-01
      • 2013-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多