charAt() 在 JavaScript 中不起作用
Posted
技术标签:
【中文标题】charAt() 在 JavaScript 中不起作用【英文标题】:charAt() not working in 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 元素,而不是那个元素的值
【参考方案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;
【讨论】:
以上是关于charAt() 在 JavaScript 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 html 请求在 javascript 中不起作用 [重复]
JavaScript 警报在 Firefox 6 中不起作用
JavaScript 在 Android Webview 中不起作用?