2013-09-29 40 views
0

我想更改div的内容,使用javascript和innerHTML无法更改div的内容 - 未捕获TypeError:无法设置null的属性'innerHTML'

我不能得到它的工作。我只是添加了更改div的代码,然后代码工作正常。我再次检查语法。

我使用webshims,的OpenLayers和jQuery/JavaScript的

在控制台中我看到

Uncaught TypeError: Cannot set property 'innerHTML' of null imagegaledit - myFile.php :768 so.onmessage - myFile.php :324

768是该行 document.getElementById("imgedtitle").innerHTML=mnmi[0];

和324是这样的 imagegaledit(0);

点亮那么帮助? 感谢

编辑 WebSockets的工作和性反应的精细

下面是代码(精简和简化)

<!doctype html> 

    <header>  
    <meta charset="utf-8"> 
    <meta http-equiv="content-type" content="text/html"> 

    <script src="jquery-1.8.2.min.js"></script> 
    <script src="js-webshim/minified/extras/modernizr-custom.js"></script> 
    <script src="js-webshim/minified/polyfiller.js"></script> 
    <script>  
     $.webshims.polyfill(); 
    </script> 

    <script src="http://maps.google.com/maps/api/js?sensor=false"></script> 

    <!--open layers api library--> 
    <script type='text/javascript' src='OpenLayers.js'></script> 
    <script type='text/javascript'> 

    //openlayers vars and stuff here... 

    function init(){ 

     //when a point on map clicked... 
     function selected_feature(event){ 
      //some openlayers magic... 
       var so = new WebSocket("ws://localhost:8000");   

       so.onerror=function (evt) 
       {response.textContent = evt;} 

       so.onopen = function(){ 
       response.textContent = "opened"; 
       so.send(JSON.stringify({command:'map',fmid:jas})); 
       } 


       so.onmessage = function (evt) {  
        var received_msg = evt.data; 
        var packet = JSON.parse(received_msg); 
        //pass data to var and arrays...      
       imagegaledit(0); 
       } 
      }//closes function selected_feature 

    }//closes init 

    function imagegaledit (w){ 
     if (w==0){ 
      document.getElementById("imgedtitle").innerHTML=mnmi[0]; 
      } 
    }//closes imagegaledit 


</script>  

    <body onload='init();'> 
     Title</br><div id="imgedtitle"> </div> </br> 
    </body> 
+0

小提琴或其他演示? –

+0

@tryingToGetProgrammingStraight这是一个包含大量include_once('header.php')的巨大文件,例如,以及其他文件。还包含php。所以,不幸的是... – slevin

+0

只是一个想法,你可以验证页面加载后DIV“imgedtitle”是否存在?也许有些东西会覆盖页面内容 –

回答

0

您需要关闭脚本标签:

</script> 
<body> 
+0

脚本中有一个结束标记。我确实忘了将它粘贴在我的帖子中。我编辑了这个问题。感谢您指出 – slevin

相关问题