点按钮上的iFrame

时间:2015-11-06 14:49:34

标签: javascript php html iframe

我有"自动创建"从数据库循环链接,当我点击链接时它应该显示一个iframe,它只适用于第一个链接。并没有与其他人合作......

首先打印数据的代码

while($row = mysqli_fetch_assoc($wr))
{
printf(nl2br("<a class='questions' id='oldQ'><b>%s</b></a>\n\n"), $row['question'], $row['question']);
}

然后是创建iframe的代码

document.getElementById('oldQ').onclick = function() {
var iframe = document.createElement('iframe');
iframe.src = "qa.php";
iframe.class = "iframe";
document.body.appendChild(iframe);
};

2 个答案:

答案 0 :(得分:1)

您为while循环中的每个项目分配了相同的html id,然后在javascript查找中使用该ID。

答案 1 :(得分:1)

您不能对多个html元素使用相同的id。为每个iframe分配一个唯一的id,或者根本不为它们分配id - 而是使用类:

printf(nl2br("<a class='questions oldQ'>...

然后

var elements = document.getElementsByClassName('oldQ');
for (i in elements) {
    elements[i].onclick = ...
}