JavaScript脚本只创建一个textarea而不是4

时间:2015-12-12 12:45:18

标签: javascript html if-statement text area

    <div id="textfelder"></div>
<script>
if (!document.getElementById('command1')) {
    string = '<input type="text" id="command1">';
    document.getElementById("textfelder").innerHTML = string;
    }
if (!document.getElementById('command2')) {
    string = '<input type="text" id="command2">';
    document.getElementById("textfelder").innerHTML = string;
    }
if (!document.getElementById('command3')) {
     string = '<input type="text" id="command3">';
     document.getElementById("textfelder").innerHTML = string;
    }
if (!document.getElementById('command4')) {
     string = '<input type="text" id="command4">';
     document.getElementById("textfelder").innerHTML = string;
    }
</script>

这只会创建一个ID为“command4”的textarea。 当我删除最后一个if语句时,脚本将使用ID“command3”创建textarea,但不会创建其他textareas。 谢谢! :d

3 个答案:

答案 0 :(得分:1)

使用+=运算符代替=

    <div id="textfelder"></div>
<script>
if (!document.getElementById('command1')) {
    string = '<input type="text" id="command1">';
    document.getElementById("textfelder").innerHTML += string;
    }
if (!document.getElementById('command2')) {
    string = '<input type="text" id="command2">';
    document.getElementById("textfelder").innerHTML += string;
    }
if (!document.getElementById('command3')) {
     string = '<input type="text" id="command3">';
     document.getElementById("textfelder").innerHTML += string;
    }
if (!document.getElementById('command4')) {
     string = '<input type="text" id="command4">';
     document.getElementById("textfelder").innerHTML += string;
    }
</script>

答案 1 :(得分:0)

如果您不使用jquery,则应使用+=

document.getElementById("textfelder").innerHTML += string;

希望它有所帮助。

答案 2 :(得分:0)

根据您的代码。它是在textfielder中覆盖内容。尝试下面的代码来追加它。

document.getElementById("textfelder").innerHTML += string;