javascript oninput只触发一次?
我有一个JavaScript函数只触发一次问题 我一开始在函数中使用了一个更简洁的结构,但后来将它分解成了离散的操作,看看我是否能找出什么。行为完全相同 在我的HTML中,在HEAD标记中,我有:javascript oninput只触发一次?,javascript,html,cgi,Javascript,Html,Cgi,我有一个JavaScript函数只触发一次问题 我一开始在函数中使用了一个更简洁的结构,但后来将它分解成了离散的操作,看看我是否能找出什么。行为完全相同 在我的HTML中,在HEAD标记中,我有: <SCRIPT> function onCharInput() { var conpagechars = document.getElementById("pagecontentx").innerHTML; var conpagecharcount = conpagechars.lengt
<SCRIPT>
function onCharInput()
{
var conpagechars = document.getElementById("pagecontentx").innerHTML;
var conpagecharcount = conpagechars.length.toString();
document.getElementById("pccount").innerHTML = conpagecharcount;
console.log('test',conpagecharcount);
}
</SCRIPT>
在页面的其他地方,我有:
id="pagecontentx" oninput="onCharInput()"
<span id="pccount"></span>
当我在文本区域中键入某个内容时,跨度会更新为内容的正确大小——只更新一次。在那之后,它什么也不做。我可以添加字符,删除字符。。。没有什么添加控制台调用后,在firefox控制台打开的情况下,我只看到一次结果。就我所知,函数在第一次调用后再也不会被调用
TIA对于CGI文本区域,数据的获取方式如下:
var conpagechars = document.getElementById("pagecontentx").value;
var conpagechars = document.getElementById("pagecontentx").innerHTML;
不是这样的:
var conpagechars = document.getElementById("pagecontentx").value;
var conpagechars = document.getElementById("pagecontentx").innerHTML;
很简单 每次有输入事件时,函数都会触发,您每次只是读取相同的字符串 的innerHTML表示其默认值 您需要读取value属性以获取其当前值 document.querySelectortextarea.addEventListenerinput,日志; 函数logevent{ console.logLog功能正在启动; console.logCurrent值:+this.value; console.logDefault值:+this.innerHTML; }
这是默认值CGI是Web服务器与外部程序对话以处理HTTP请求的一种方式。您正在处理客户端JavaScript。没有涉及HTTP,所以没有涉及CGI。这是一个CGI表单。我担心的是,由于这一点,情况有所不同。这就是我提到它的原因,不是因为我认为一旦页面打开,服务器就在做任何工作。但是是的,你当然是对的。