知道为什么这个功能不起作用?我在这里有一个jsfiddle http://jsfiddle.net/hoodleehoo/8wxwe9rd/
这是我的功能:
$("#answer").on('input',function(e){
if(e.target.value === ''){
// Textarea has no value
document.getElementById('hotpages1').style.display = 'block';
document.getElementById('hotpages2').style.display = 'none';
} else {
// Textarea has a value
document.getElementById('hotpages1').style.display = 'none';
document.getElementById('hotpages2').style.display = 'block';
}
});
目标是根据是否键入textarea来更改它的显示样式。如果文本被删除且文本区域再次为空,则应切换回原来的颜色。 / p>
更新:
好吧,我忘了将jquery放在jsfiddle中,我在发布之后就把它拿到了,但是这并没有解决我的页面上的问题。经过大量的反复试验后,结果表明该功能需要放在表格之后,而不是之前或之内。将功能移动到页面底部后,它可以很好地工作!
答案 0 :(得分:3)
你忘了在小提琴中引用 jQuery 。
我将事件更改为keyup
,input
也可以。 input
是一个较新的事件,请咨询compatibility table。
$("#answer").on('keyup', function (e) {
var hot1 = document.getElementById('hotpages1'),
hot2 = document.getElementById('hotpages2');
if (e.target.value === '') {
hot1.style.display = 'block';
hot2.style.display = 'none';
} else {
hot1.style.display = 'none';
hot2.style.display = 'block';
}
});