自动执行aref标记来自ajax成功调用

时间:2015-09-08 06:51:53

标签: javascript jquery ajax

我正在尝试在iframe中执行href标记调用,但我遇到了一些问题,它无效:

我的服务器页面正在返回这样的代码:

<a href="http://www.mylink.com" target="iframe_a"></a>

这是我成功回调ajax:

success: function(data){
    $('#contents').show().html("<iframe width='100%' height='90%' name='iframe_a'>" + eval(data) + "</iframe>");
}

但它不起作用,我不知道如何解决这个问题,如果服务器部分需要进行任何更改,我可以改变它,让我知道谢谢。

问题#2:

加载后我使用以下代码加载div中的内容:

$('#contents').show().html("<table border=0 cellspacing=0 cellpadding=0 id=hold_my_iframe><iframe width='100%' height='90%' name='iframe_a' src='" + data + "'></iframe></table>");

我在浏览器中渲染页面时的上述部分是这样的:

<iframe width="100%" height="90%" src="//www.websitename.com " name="iframe_a">
complete page of the websitename.com inside
</iframe>
<table id="hold_my_iframe" cellspacing="0" cellpadding="0" border="0"></table>

div框的内容如下:

<div style="display: block;overflow:auto;width:100%;height:auto;" class="tab default-tab" id="contents"></div>

我尝试改变很多东西,但首先是它没有在表格中加载iframe,我尝试显示:inline-block

另一件事是我的iframe里面有一个自己的页面的滚动条,所以我的父页面iframe滚动条不起作用,它总是指向它的子滚动条,我怎样才能修复 < / p>

2 个答案:

答案 0 :(得分:0)

为什么不像这样使用iframe的src属性:

success: function(data){
    $('#contents').show().html("<iframe width='100%' height='90%' name='iframe_a' src='" + data.href + "'></iframe>");
}

当然,如果我的问题正确并且data参数包含链接对象,否则可能需要一些额外的操作来获取href属性的值。

更新1:其中一项附加操作由@WisdmLabs指定

更新2:您应该在表格单元格内呈现iframe,否则它是一个无效的结构,浏览器正在尝试为您修复此错误。以下是您的代码的外观:

$('#contents').show().html("<table border=0 cellspacing=0 cellpadding=0 id=hold_my_iframe><tr><td><iframe width='100%' height='90%' name='iframe_a' src='" + data + "'></iframe></td></tr></table>");

根据您的滚动条问题,请使用http://jsfiddle.net服务或类似服务提供示例。

答案 1 :(得分:0)

success: function(data){
    $('#contents').show().html("<iframe width='100%' height='90%' name='iframe_a' src='" + $.parseHTML( data ) + "'></iframe>");
}

使用此代替直接将href放在iframe标记中的src属性