为什么这个简单的Javascript重构不起作用?

时间:2018-04-10 10:06:55

标签: javascript html forms

关于HTML格式提交的简单问题。

为什么这样做:

var inputStuff = document.getElementById("inputBox");
var output = document.getElementById("outputBox");

function useMethod(element) {

    output.innerText = inputStuff.value;
    return false; 
}

但这不是:

var inputStuff = document.getElementById("inputBox");
var output = document.getElementById("outputBox");

function useMethod(element) {
    var out = output.innerText;
    var into = inputStuff.value;

    out = into;
    return false; 
}

这是HTML:

<h1>Put your input in here</h1>
    <form onsubmit="return useMethod(this)" action="">
        <input type="text" id="inputBox">
        <input type="submit" value="Submit">
    </form>

    <h2>Output:</h2>
    <p id="outputBox">Starter text</p>

非常感谢您的任何帮助,

[R

1 个答案:

答案 0 :(得分:4)

out = into;只会将into(字符串)的值分配给out(字符串),而output.innerText = inputStuff.value;会调用隐式setter 这也将改变DOM值。