我有几个 div 使用从查询中获得的 id,然后在函数中使用该 id 来显示/隐藏 div onclick。我的问题是使用下面的代码,div 似乎打开时“显示”更改为“隐藏”(单击“隐藏”不会更改为“显示”),但 div 的内容未显示。
JavaScript:
function toggle(id) {
var ele = document.getElementById(id);
var text = document.getElementById(id);
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "show";
}
else {
ele.style.display = "block";
text.innerHTML = "hide";
}
}
php:
echo "Info: <a id='$id' href='javascript:toggle(\"$id\");'>show</a>";
echo"<div id='$id' style='display: none'></div>";
最佳答案
您两次使用相同的 ID,这是错误的,向标记的 ID 添加 _toggle 可以解决此问题。
将您的代码更改为此,它可能会起作用:
Javascript:
function toggle(id) {
var ele = document.getElementById(id);
var text = document.getElementById(id + '_toggle');
if(ele.style.display == 'block'){
ele.style.display = 'none';
text.innerHTML = 'show';
}else{
ele.style.display = 'block';
text.innerHTML = 'hide';
}
}
php:
echo 'Info: <a id="'.$id.'_toggle" href="javascript:toggle(\''.$id.'\');">show</a>';
echo '<div id="'.$id.'" style="display: none;"></div>';
关于php - 使用函数中的查询结果显示/隐藏 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12454060/