我试图在达到极限时改变计数器的颜色 但它不起作用。不知道为什么 我是javascrit新手,我不知道jquery,请在javascript中asnwer。 这是我的代码工作:
<!DOCTYPE html>
<html>
<head>
<script>
function counting(){
var count = document.getElementById('text1').value;
var grab = document.getElementById('text1');
var count1 = document.getElementById('p1');
count1.innerHTML = count.length;
if (grab.length > 10) {
count1.style.color="#0033bb";
};
}
</script>
</head>
<body>
<textarea id="text1" onkeyup="counting();"></textarea>
<p id="p1">0</p>
</body>
</html>
答案 0 :(得分:2)
抓取是元素,而不是你想要它的值
if (grab.value.length > 10) {
count1.style.color="red";
}
工作小提琴: http://jsfiddle.net/entw1e39/
正如其他人指出你也可以使用
if (count.length > 10) {
count1.style.color="red";
}
然后我会改写
var grab = document.getElementById('text1');
var count = grab.value;
这是一个很好的做法。没有必要两次调用DOM,这是成本效率低下的。
答案 1 :(得分:0)
grab
是输入元素,grab.length
始终是undefined
。
您可以使用count.length
代替grab.length
。