javascript - getElementById 和 Document.write 的替代方法

标签 javascript

我正在制作一个函数,需要使用 for 循环来输出两个数字之间的所有数字。如果用户选择 14,我的函数将输出 1,2,3,4。尽管我的函数按我需要的方式工作,但使用 document.GetElementById 的输出不想合作(仅覆盖最终答案 (4))和 document。 write() 将我带到另一个我不想要的页面。我需要的是一种替换我的 p id='replaceOne' 的方法,它将所有数字放在同一页上。谢谢!

function Counter() {
  var number1 = document.getElementById('number1').value;
  var number2 = document.getElementById('number2').value;
  for (i = number1; i <= number2; i++) {
    var answer1 = [i];
    document.write(answer1);
  }
}
<html>
  <head>
    <title>
      For Loops excercise 1
    </title>
  </head>
<body>
  <table>
    <tr>
      <td align="left" valign="top">
<p class=headerOne><h3>Counter a</h3>
<textarea id="number1" class="box"></textarea><br>
<textarea id="number2" class="box"></textarea><br>
<button type="button" onclick="Counter()">Find range</button><br>
<p>Your result is: </p>
<p id="replaceOne"></p>
      </td>
</body>
</html>

最佳答案

您可以创建一个短名称的函数,其功能与 document.getElementById 相同,并将其添加到元素的 innerHTML 中。
函数:const elm = id => document.getElementById(id)。这一行只是一个 Arrow Function哪个return提供给该函数的带有 id 的元素。与

相同
function elm(id){
    return document.getElementById(id)
}

更新 innerHTML: elm('replaceOne') 返回一个元素。每个元素都有一个属性 innerHTML .在这种情况下,innerHTML''。我正在使用加法赋值将 i 添加到现有的 innerHTMLelm('replaceOne').innerHTML += i; 行与

相同
elm('replaceOne').innerHTML = elm('replaceOne').innerHTML + i;

const elm = id => document.getElementById(id)
function Counter() {
  var number1 = document.getElementById('number1').value;
  var number2 = document.getElementById('number2').value;
  for (i = number1; i <= number2; i++) {
    var answer1 = [i];
    elm('replaceOne').innerHTML += i;
  }
}
   
  <table>
    <tr>
      <td align="left" valign="top">
<p class=headerOne><h3>Counter a</h3>
<textarea id="number1" class="box"></textarea><br>
<textarea id="number2" class="box"></textarea><br>
<button type="button" onclick="Counter()">Find range</button><br>
<p>Your result is: </p>
<p id="replaceOne"></p>
      </td>
</table>

关于javascript - getElementById 和 Document.write 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54813308/

相关文章:

php - 使用 PHP 从文件中读取大型 js 数组

javascript - 如何使 Javascript 计时器适用于可变参数

javascript - 单击双列表按钮上的移动/删除时如何获取值 - JQUERY

javascript - 调用对象内的另一个函数

javascript - 如何使用javascript将图像标签设置到html表中?

javascript - jquery错误$未在javascript扩展中定义

javascript - 开发 JavaScript 的最佳方法是什么?

javascript - 如何下载播放音频

javascript - 使用 node-webkit 创建自定义 Web 界面应用程序并使用 Javascript 操作 DOM

javascript - 从 json 中删除对象的一些值