【问题标题】:fancybox2.0 could not open with jquery ajax responseTextfancybox2.0 无法用 jquery ajax responseText 打开
【发布时间】:2013-03-21 10:47:05
【问题描述】:

我正在使用 fancybox2 打开一个新的 html。这里我通过jquery ajax 方法生成html。 但fancybox2 没有反应。这是代码

 var Line = $.ajax({ type: "GET",
           url: "/ajaxHTML",
           dataType: 'html',
           success: function(result){alert(result);},
           }).responseText;

 $.fancybox.open({ 'content' : Line}, {type: 'html'});

我是不是用错了? 我可以用简单的文本或html代码打开fancybox。但不是这个 responseText 变量。 并且ajax可以成功获取html。警报功能起作用并显示整个 html 页面的内容。

【问题讨论】:

    标签: jquery ajax fancybox fancybox-2


    【解决方案1】:

    尝试:

    $.fancybox.open(Line,{
        type: 'html'
    });
    

    ...或

    $.fancybox.open({
        content : Line,
        type: 'html'
    });
    

    JSFIDDLE

    【讨论】:

    • 两者都不起作用。也许我的html太复杂了?我正在使用整个网页,包括脚本/标题/头部/正文/等。内容的html格式有什么限制吗?
    • 因为是整个html页面,可能需要换成type: 'iframe'
    • 我想是的。我会试试看它是否有帮助。我不是 html/js 方面的专家,iframe 是否可以支持自动加载而不是点击?默认情况下,我的应用程序不会显示此 html,我希望它在某些情况下会弹出一个带有 fancybox 的窗口。这里我使用的是谷歌图表,我不确定谷歌图表如何与fancybox一起使用。
    • 或者我不确定iframe是否支持动态内容。我想在选择时显示一个谷歌图表,但该图表是动态生成的。所以默认情况下,iframe 中没有任何内容。你能分享一些想法或代码让 iframe 像这样工作吗?
    • 现在确定这是否可行:var iframeDoc = myIframe.contentWindow.document; iframeDoc.open(); iframeDoc.write('你好世界'); iframeDoc.close();
    猜你喜欢
    • 2015-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 2010-11-02
    • 2013-10-24
    • 2016-03-24
    相关资源
    最近更新 更多