在模态/ div中显示ajax响应 - 当响应以网页的形式显示时

时间:2017-05-28 11:25:17

标签: javascript jquery html css ajax

我正在进行ajax调用 - 一种ping操作,以查看用户提供的url是否有效。它可能是GET或POST请求。我想向用户显示get / post请求的响应,所以我使用弹出模式来显示响应。但如果响应是以网页的形式进行的,那么我的原始页面的css样式就会令人不安(因为响应网页中的css样式)。 有什么办法让我可以将这个特殊的div与我的网页分开,所以样式不会被打扰

以下是用于验证insert into #temp (sku,qty) values ((select value from [dbo].[fn_Split](@sku, ',')), (select value from [dbo].[fn_Split](@qty, ','))) 变量中提供的网址的代码片段( char 是用于验证网址并返回响应和响应代码的其他API)

ValidateURL

返回的特定回复是网页

function validateURL(char){
    var value = char.value;
    $.ajax({
            url: "/FrugalPlatform/validateURL.action",
            type: "POST",
            data: {
                url: value,
                protocol : protocol,
            },
            success: function(data) {
                $("#response").html(data.response);
                $("#modalForResponse").modal();
            }
    });
}

其中包含多个链接的资源... 这搞乱了我的网页风格...

snapshot of one such scenario

1 个答案:

答案 0 :(得分:0)

我直接尝试将html响应放入div元素中,这会扰乱样式..而不是现在使用iframe,并动态修改其内容

var doc = document.getElementById('responseFrame').contentWindow.document;
doc.open();
doc.write(data.response);
doc.close();

其中responseFrame是iframe的ID