在 javascript 中打印变量时出错

error in printing the variable in javascript

当我运行这段代码时,它没有向我显示我想要显示的消息(即:res)。假设我正在输入“$code$ ".有人能帮帮我吗?</p> <pre><!DOCTYPE HTML> <html> <head> </head> <body> <h1>Enter a sample message</h1> <form> <input type="text" name="a" id="a"> <button onclick="parse()">submit</button> <p id="a"></p> </form> <script> function parse(){ var msg=document.getElementById("a").innerHTML; var res=msg.replace("$code$","1101"); document.getElementById("a").innerHTML=res;//this is to print res. } </script> </body> </html>

两个元素不能有相同的 ID。此外,无法使用 innerHTML 属性 获得 input 元素的值。此外,在单击提交按钮时,页面将在表单提交后重新加载。为防止出现这种情况,请在 <form> 标记的 onsubmit 中调用函数 parse,并从函数中调用 return false。

<!DOCTYPE HTML>
<html>
<head>

</head>
<body>
    <h1>Enter a sample message</h1>
    <form onsubmit="return parse();">
        <input type="text" name="a" id="a">
        <button type="submit">submit</button>
        <p id="b"></p>
    </form>
    <script>
        function parse(){
            var msg = document.getElementById("a").value;
            document.getElementById("b").innerHTML = msg;
            return false;
        }
    </script>
</body>
</html>

检查这个:

<form>
    <input type="text" name="a" class="input_field" id="a">
    <button type="button" onclick="parse()">submit</button>
    <p id="a"></p>
</form>
<script>
    function parse(){
        var msg=document.getElementById("a").innerHTML;
        var form = document.getElementsByTagName("form")[0]
        msg = form.getElementsByClassName("input_field")[0].value;//this is to print res.

    }
</script>

我在按钮中添加了 type="button" 以防止表单重新加载页面