![](/img/trans.png)
[英]Ajax/jquery result does not display in iframe. Displays in new page instead
[英]jQuery ajax and php iframe. Form target issue
这是日常问题。 =)
用例和问题描述:
所以,
如何使用$ .ajax发布的结果数据更新iframe?
我应该添加其他控件吗?
是否有其他符合iframe标准且可编辑的帖子数据提交表单的方法?
提前感谢大家,祝您编码愉快:)
编码:
的HTML
<html>
<head>
...
</head>
<body>
<!--the iframe -->
<iframe src ="iframe.php"
class="my_iframe" id="my_iframe"
name="my_iframe" frameborder="0" allowtransparency="true">
</iframe>
<!--the form -->
<form id="my_form" action="iframe.php"
method="post" target="my_iframe">
<!-- some input fields -->
<button onclick="my_function"></button>
</form>
</body>
</html>
JAVASCRIPT-JQUERY
function my_function(){
var my_data = .../*go collect form data*/
$.ajax({
type: "POST",
url: "iframe.php",
data: my_data,
success:function(response){
$("#my_frame").html(response);
}
});
}
部分结果:
不赞成在主线程上使用同步XMLHttpRequest,因为它会对最终用户的体验产生不利影响。 如需更多帮助,请访问https://xhr.spec.whatwg.org/ 。
PS在ajax.success函数中,我尝试了这种替代方法,但问题是相同的:
$('#my_iframe').append(result);
要更新iframe,您可以像这样更新它的src
属性:
$('iframe#my_iframe').attr('src', 'iframe.php');
把它放在你的ajax success
回调中。 并且iframe将重新加载。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.