取一个字符串并将其用作纯HTML?

时间:2014-11-30 03:54:52

标签: javascript string parsing

假设我有一个名为Test的字符串,其值为:

<img src=test.gif></img>

<p> Testing 123 </p>

是否有可能将它用作代码,因为HTML尚未编译?

编辑:我试过这个并且它没有用。

&#13;
&#13;
<body>
  <p id="myText" onload="HTMLThing()"> Soon. </p>
</body>

<script>
  var testString = "<img src=test.gif></img><p> Testing 123 </p>"
  function HTMLThing(){
		document.getElementById("myText").innerHTML=testString;
	}  
</script>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:0)

我不知道您正在使用哪种语言,但当然您可以打开一个文件(扩展名为.html)并将该字符串转储到该文件中。稍后,当您打开HTML文件时,您将获得呈现的网页。

但请确保您创建该文件的目录,也应包含图片,或者您可以更改图片在字符串中的位置。

答案 1 :(得分:0)

在您的页面上,您可以创建HTML元素并为其提供一些ID,例如&#34;&会将myText#34 ;. E.g:

<div id="myText">This is what's shown before Javascript runs.</div>

然后在您的Javascript代码中可以执行以下操作:

document.getElementById("myText").innerHTML='<img src=test.gif></img><p> Testing 123 </p>';

如果您想要的话,那将使用上面的代码填充您的元素,并带来明显的后果(添加图片和文本)。

更新:如果您使用onload事件调用Javascript函数,请务必将onload="myFunction()"分配放入body标记,因为它不会在divp等工作。或者,您可以使用onClick代替onloaddivp和其他元素。

答案 2 :(得分:0)

以下代码应该有效。问题是<p>元素不会触发onload事件,但body会触发。{/ p>

&#13;
&#13;
<body onload="HTMLThing()">
  <p id="myText">Soon.</p>

  <script type="text/javascript">
    var testString = "<img src=test.gif></img><p> Testing 123 </p>";
    function HTMLThing(){
      document.getElementById("myText").innerHTML = testString;
    }  
  </script>
</body>
&#13;
&#13;
&#13;

有几种方法可以执行onload事件,另一种方法是:

&#13;
&#13;
<body>
  <p id="myText">Soon.</p>

  <script type="text/javascript">
    var testString = "<img src=test.gif></img><p> Testing 123 </p>";

    function HTMLThing(){
      document.getElementById("myText").innerHTML = testString;
    }

    window.onload = function(){
      HTMLThing();
    }

  </script>
</body>
&#13;
&#13;
&#13;