views:

103

answers:

4
+1  Q: 

Javascript Problem

I am trying to show a script in a div tag. But in the div tag the script does not run.
Here is my Code:

<div id="div0" align="right">
  <script type="text/javascript">
  <!--
    alert("Hi");
  -->
  </script>
</div>  

It does not work for me. Please anybody tell me, what is the problem?

Edit:

My complete code is that:

<html>  
   <head>  
   <script type="text/javascript">
      var xmlhttp;
      function loadXMLDoc(url)
      {
        xmlhttp=null;
        if (window.XMLHttpRequest)
        {// code for Firefox, Opera, IE7, etc.
          xmlhttp=new XMLHttpRequest();
        }
        else if (window.ActiveXObject)
        {// code for IE6, IE5
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        if (xmlhttp!=null)
        {
          xmlhttp.onreadystatechange=state_Change;
          xmlhttp.open("GET",url,true);
          xmlhttp.send(null);
        }
        else
        {
          alert("Your browser does not support XMLHTTP.");
        }
      }

     function state_Change()
     {
      if (xmlhttp.readyState==4)
      {// 4 = "loaded"
        if (xmlhttp.status==200)
        {// 200 = "OK"
         document.getElementById('T1').innerHTML=xmlhttp.responseText;
        }
        else
        {
          alert("Problem retrieving data:" + xmlhttp.statusText);
        }
     }
   }
   </script>
   </head>

   <body onload="loadXMLDoc('test_xmlhttp.php')">
     <div id="T1"></div><br />
   </body>

  </html>  

My test_xmlhttp.php is as follows:

  <script type="text/javascript">
  <!--
    alert("Hi");
  -->
  </script>

But It shows nothing. Please Please Please give me a solution.

A: 

There is no point of failing in this. I tried it on IE8 and Firefox. IE8 blocks it. But once the block is removed, it works fine. Have you noticed any blockage by IE?

Kangkan
+3  A: 

The problem might be the HTML comments, which should be commented out as S.Mark points out.

However, there is no reason to include those comments whatsoever. They were originally suggested to prevent browsers without JavaScript/JScript support from breaking on the code (trying to read it as markup). I think the last browsers with that problem came out in like '95 and are no longer in use :)

There is a legit reason to use CDATA blocks if you're serving an XHTML 1.0 Strict document, but I doubt you're going for that.

bcherry
I've deleted my answer because of downvotes.
S.Mark
+3  A: 

You should use HTML elements(eg. >) instead of greater-than (>) or less-than (<) characters. Try following code.

<div id="div0" align="right">  <br />
  &lt;script type="text/javascript"&gt; <br />
  &lt;!--  <br />
    alert("Hi");  <br />
  --&gt;  <br />
  &lt;/script&gt;  <br />
</div>   <br />
Hossain Khan
As you said, you wanted to show the code! not execute.
Hossain Khan
+1  A: 

Perhaps you are running it locally and your browser is preventing the javascript from being run?

I just ran the code on my site and it loads up just fine.

webdestroya