Php 绑定到动态创建的iFrame中的元素
我有一个用户可以创建多个iFrame的页面 用户单击链接以创建新iframe: 父页面:Php 绑定到动态创建的iFrame中的元素,php,jquery,iframe,bind,Php,Jquery,Iframe,Bind,我有一个用户可以创建多个iFrame的页面 用户单击链接以创建新iframe: 父页面: echo "<div id='iframes_wrapper'>"; $q = mysql_query("SELECT * FROM chat_iframe WHERE init_uid='$_SESSION[uid]'"); while ($row = mysql_fetch_assoc($q)) { $target_uid = $row['target_uid']; $if
echo "<div id='iframes_wrapper'>";
$q = mysql_query("SELECT * FROM chat_iframe WHERE init_uid='$_SESSION[uid]'");
while ($row = mysql_fetch_assoc($q)) {
$target_uid = $row['target_uid'];
$iframeid = $row['id'];
echo "<iframe id='iframe_$iframeid' src='includes/chat_iframe.php?iframeid=$iframeid' class='chat_iframe' scrolling='no' frameborder='0' data-target_uid='$target_uid'></iframe>";
}
echo "</div>";
$(document).ready(function() {
$("#window").delegate(".open_iframe","click", function() {
var target_uid = $(this).attr("data-uid");
$.post("processforms/process_chat.php", { target_uid:target_uid, open_iframe_submit:0 }, function() {
$("#iframes_wrapper").load('chat.php?timer='+new Date().getTime() + " #iframes_wrapper", function() {
$("iframe").each(function() {
var this_iframeid = $(this).attr("id");
console.log(this_iframeid);
$("#iframe_"+this_iframeid).contents().find("a").on('click', function(event) { alert('test'); });
});
return false;
});
});
});
return false;
});
iframe.php
echo "$target_displayname <a href='javascript:void(0);' data-iframeid='$iframeid' class='close_chat_iframe'><i class='fa fa-remove' style='float:right;'></i>";
我遇到的问题是,当用户单击iframe中的链接时,什么都不会发生。您应该尝试而不是$iframe.eachfunction{…};:
对数据属性使用jQuery的方法:$。data@SterlingArcher好的,我会检查一下。请检查一下,它们已经不再维护了,现在可以使用了。而是学习,并使用或。您还希望在加载iframe后使用iframe的onload事件来设置处理程序,而不是before@A.Wolff举个例子就好了。提前谢谢!
$("iframe", this).on('load', function () {...});