【问题标题】:charAt() not working in javascriptcharAt() 在 JavaScript 中不起作用
【发布时间】:2018-05-09 20:17:22
【问题描述】:
<!DOCTYPE html>
<html>

<head>
<script>
  document.write("some text");
  function change()
  {
    alert("function loaded");
    var text=[];
    text=document.getElementById("inname");
    document.getElementById("demo").innerHTML = text.charAt(0);
  }
</script>
</head>

<body>
<input type="text" id="inname">
<button onclick="change()"> convert </button>
<p id="demo"> </p>
</body>

</html>

我创建了一个简单的 HTML 页面来读取字符串并显示该字符串的第一个字符,但它不起作用。

任何想法为什么这不起作用?

【问题讨论】:

  • text 是一个 dom 元素,而不是那个元素的值

标签: javascript charat


【解决方案1】:

因为,charAt() 方法从 字符串 中返回指定的字符。所以 text 必须是 string 而不是 DOM 对象。 要获取输入的值,请使用 text.value

function change() {
  var text = document.getElementById("inname");
  document.getElementById("demo").innerHTML = text.value.charAt(0);
}
<input type="text" id="inname">
<button onclick="change()"> convert </button>
<p id="demo"></p>

【讨论】:

    【解决方案2】:

    您已将 DOM 对象本身分配给变量 text,而不是输入的文本值。

    你需要使用这个DOM对象的.value属性来获取文本值。

    text = document.getElementById("inname").value;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-29
      • 1970-01-01
      • 2021-08-14
      • 2018-07-06
      • 2018-07-07
      • 1970-01-01
      • 2012-07-01
      相关资源
      最近更新 更多