我的问题是,我从数据库中检索到一个值为147的php变量$ba。下面的代码片段不起作用,没有显示任何图像。如果我加$ba=147;在fill_div调用之前,它可以完美地工作。当数据库中填充$ba时,我很困惑为什么它不起作用。在这两种情况下,对页面源代码的检查显示调用被正确填充fill_div("147");
<script type='text/javascript'>
function fill_div(ba)
{
document.getElementById("ba").innerHTML="<img src='admin/images/image.gif'/>";
}
</script>
<script>
fill_div("<? echo stripslashes($ba); ?>");
</script
<div id="<? echo $ba ?>" style="border:1px solid; width:120px; height:40px"></div>
当您需要传递变量ba
时,您将字符串文本"ba"
传递给getElementById
document.getElementById(ba).innerHTML="<img src='admin/images/image.gif'/>";
此外,如果$ba
中有引号,则条带斜杠可能不是一个好主意;如果$ba
中有"
,如果不转义,则会在JavaScript中导致错误。
try。。
document.getElementById(ba).innerHTML
document.getElementById("ba")
应该是
document.getElementById(ba)
尝试将您的document.getElementById更改为:
document.getElementById(ba)
如果它有引号(在您的示例代码中),"ba"将被视为字符串,而不是变量。