无法读取属性'style'的null

时间:2014-04-14 05:50:51

标签: php codeigniter

<script>
            function percentShow(a,b) {

            if(b==5){
                alert(b); 
                alert(document.getElementById('mydiv1'));
                document.getElementById('mydiv1').style.backgroundColor = 'blue';

              document.getElementById('mydiv1').style.width = '50%';

            }


        }
        </script>
<?php 
   echo '<script>window.onload=percentShow('."'".$this->commonmodel->percentCount(5)."'".',5);</script>';?>

3 个答案:

答案 0 :(得分:0)

我不确定你的问题是什么,但我认为你得到的信息是你无法阅读属性&#39; style&#39; of null&#34;。因此,我将以#34来阅读您的问题;为什么我会收到此错误消息?&#34;

方法getElementById将从具有该给定id的文档中获取元素(如名称明确指出的那样),但如果它找不到该元素,则它将返回&#39;空&#39 ;.但是null不是具有任何方法或属性的对象。因此,如果您尝试在该对象上调用.style,它将无法正常运行并崩溃。

答案 1 :(得分:0)

在脚本调用尝试

之前,

可能是你的div没有加载

<script>
function percentShow(a, b) {
    if (b == 5) {
      document.getElementById('mydiv1').style.background = 'blue';
      document.getElementById('mydiv1').style.width = '50%';
    }
}
</script>

<div style="height:50px; width:50px;" id="mydiv1">rgdfghdfjhfgj</div>

<?php 
   echo '<script>window.onload=percentShow('.$this->commonmodel->percentCount(5).',5);</script>';?>

答案 2 :(得分:0)

 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
    function percentShow(a, b) {
        if (b == 5) {
            alert(b);
            $('#mydiv1').css('background-color','blue').css('width','50%');

        }
    }
    </script>
    <?php echo '<script>window.onload=percentShow('.$this->commonmodel->percentCount(5).',5);</script>';?>
    <input type="button" onclick="percentShow(1,5);" value="test">