javascript - jqModal/JQuery 问题,div 未更新新内容?

标签 javascript jquery jqmodal

我希望有人能够为相关的 jQuery/jqModal 新手指出调试此错误的正确方向。我将 html 片段加载到 div 中,然后使用 jqModal 将该 div 显示为模式对话框。问题是 div 已显示,但未显示我更新的 html。

我在 jquery 调用的响应中显示我的 jqModal 对话框,函数 foo 是从 onclick 事件调用的:

function foo(url)
{
    $.ajax({
        type: "GET",
        url: url,
        success: function(msg)
        {
            $('#ajaxmodal').html(msg);
            $('#ajaxmodal').jqmShow();
        }
    });
}

ajaxmodal 是一个简单的 div。

最初我认为问题一定出在我传递给回调的 html 片段(msg)中,但我不认为就是这样,即使我注释掉 $( '#ajaxmodal').html(msg) 行或传递硬编码 html。我认为我已经正确配置了 jqModal,使用我们的 ajaxmodal div 的其他调用正常工作,我能够显示模式,根据服务器响应更新内容等。

当我尝试在 firebug 中调试时,在调用 .jqmShow() 后出现以下错误。我有时在其他地方看到过这个错误,当时页面似乎还没有加载,我承认我对此感到困惑,因为我们已经将 jqModal 选择器包装在 $(document).ready() 中调用,所以也许我有一个更大的问题,这个调用恰好触发?

在 jquery.jqModal.js 文件中,第 64 行:js err is $(':input:visible',h.w)[0] 在该行中未定义:

f=function(h){try{$(':input:visible',h.w)[0].focus();}catch(_){}}

当我在 Firefox 中单步执行此操作时,h.w[0] 似乎没问题,它引用了我们的“#ajaxmodal”div。

提前感谢您提供任何追踪此问题的建议?

最佳答案

如果您没有需要焦点的输入,您可以在 jqModal.js 中进行更改:

f=function(h){try{$(':input:visible',h.w)[0].focus();}catch(_){}},

至:

f=function(h){try{}catch(_){}},

无论如何,这就是我所做的;)

关于javascript - jqModal/JQuery 问题,div 未更新新内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1348844/

相关文章:

javascript - 如何将我的 Passport js 凭据转发到 GitHub?

javascript - 如何在自动循环网页时进行干净的过渡?

javascript - 我需要将文本框名称传递到 AngularS 路由页面吗?

javascript - Swiper - 初始化时宽度错误,调整大小后宽度正确

javascript - 按顺序切换嵌套列表?

javascript - 在独立容器层之间使用 vanilla js 交叉淡入淡出幻灯片

javascript - 使用 html2canvas 将带有背景图像的 Canvas 保存到服务器

javascript - 从 JavaScript 用于 Web 应用程序的跨浏览器最稳定的模式对话框实现是什么?

jquery - jqModal 从第一个模式内的链接触发第二个模式窗口

jquery - jQuery jqGrid 编辑表单是否支持多选字段?