【发布时间】:2017-11-15 13:26:54
【问题描述】:
我将charAt() 放在for 循环中以获取输入框inp 中输入的字符并在textarea outp 中显示输出。
var inp = document.getElementById('inp').value;
var outp = document.getElementById('display');
for(x = 0;x<inp.length;x++){
var res = inp.charAt(x);
outp.innerHTML = res + "\n";
}
由于某种原因,它只打印输入中的最后一个字符,而不是打印输入的每个字母。我猜这是 charAt 的性质,或者循环有问题。
我觉得它只是替换了字符,所以我什至插入了一个换行符,但似乎没有帮助。
提前致谢!
【问题讨论】:
-
追加不要替换:
outp.innerHTML += res + '\n';(另请注意大写L) -
您正在替换输出。你需要追加
-
另外,
innerHTML不是innerHTMl -
另外,最好更新一次
innerHTML,而不是循环。首先将逻辑应用于字符串变量,最好使用split和join。 -
或只是
outp.innerHTML = inp.split('').join('\n');
标签: javascript for-loop char