如何将Javascript变量传递到HTML文件中

时间:2014-03-02 21:47:55

标签: javascript html

我是Javascript和HTML的新手。我有一个小问题,我一直在努力修复,但不知道如何。

我正在尝试将变量从Javascript文件中的方法传递到HTML文件,并将其值用作HTML代码。 我知道Javascript文件正确传递到HTML中,问题只是从中获取变量。

以下是相关的Javascript方法:

function getCode()  {
    var myCode ="Hello World";
    document.getElementById("myCode").innerHTML = "<a>" + myCode + "</a>";
}

以下是相关的HTML代码:

<body>
    <a href="myCode" onclick="getCode()">
    <code id="myCode" class="prettyprint"> myCode </code>
</body>

我不知道我做得对不对。我只需要将变量myCode转换为HTML代码,换句话说,HTML中的myCode此时应该转为“Hello World”:

<code class="prettyprint"> myCode </code>

3 个答案:

答案 0 :(得分:2)

点击该链接后,浏览器会将地址栏更改为myCode,因为这是锚点href属性指向的内容。

我猜这不是您想要的,因此您可以将href属性的值更改为#以防止这种情况发生。

<a href="#" onclick="getCode()">

答案 1 :(得分:2)

应该可以正常工作,但设置href值意味着锚点在重定向时会重定向。

<a id="myCode" href="#" onclick="getCode()">click</a>
<code id="myCode" class="prettyprint"> myCode </code>

<script>
    function getCode()  {
        var myCode ="Hello World";
        document.getElementById("myCode").innerHTML = "<a>" + myCode + "</a>"; 
    }
</script>

FIDDLE

答案 2 :(得分:1)

这是一个有效的JSFiddle:http://jsfiddle.net/bGQy5/

<body>
    <a href="#" onclick="getCode()">Click me</a>

    <br/><br/>

    <code id="myCode" class="prettyprint"> Text
        <a href="#">Test</a>
    </code>


</body>

window.getCode = function () {
   var myCode = "Hello World";
   document.getElementById("myCode").innerHTML = "<a>" + myCode + "</a>";
 }

请注意几个问题:

  • 你没有关闭你的第一个标签,这不是很好
  • 您应该在链接上设置“HREF”标记,以使其可以点击。
  • 您需要引用某个函数(例如,将其附加到窗口或类似函数)
  • 你最好使用javascript库,比如jquery