0

我的问题是我有一个从数据库中检索到的值为 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>
4

4 回答 4

4

当您需要传递变量时,您将字符串文字传递"ba"getElementByIdba

document.getElementById(ba).innerHTML="<img src='admin/images/image.gif'/>";

$ba此外,如果其中包含引号,则带斜杠可能不是一个好主意,如果其中$ba包含 a ",如果未转义,则会导致 JavaScript 出错。

于 2012-09-12T04:41:02.193 回答
3

尝试 ..

 document.getElementById(ba).innerHTML
于 2012-09-12T04:41:19.500 回答
1
document.getElementById("ba")

应该

document.getElementById(ba)
于 2012-09-12T04:41:08.860 回答
0

尝试将您的 document.getElementById 更改为:

document.getElementById(ba)

如果它有引号(如您的示例代码中所示)“ba”被视为字符串,而不是变量。

于 2012-09-12T04:43:54.420 回答