Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript oninput只触发一次?_Javascript_Html_Cgi - Fatal编程技术网

javascript oninput只触发一次?

javascript oninput只触发一次?,javascript,html,cgi,Javascript,Html,Cgi,我有一个JavaScript函数只触发一次问题 我一开始在函数中使用了一个更简洁的结构,但后来将它分解成了离散的操作,看看我是否能找出什么。行为完全相同 在我的HTML中,在HEAD标记中,我有: <SCRIPT> function onCharInput() { var conpagechars = document.getElementById("pagecontentx").innerHTML; var conpagecharcount = conpagechars.lengt

我有一个JavaScript函数只触发一次问题

我一开始在函数中使用了一个更简洁的结构,但后来将它分解成了离散的操作,看看我是否能找出什么。行为完全相同

在我的HTML中,在HEAD标记中,我有:

<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表单。我担心的是,由于这一点,情况有所不同。这就是我提到它的原因,不是因为我认为一旦页面打开,服务器就在做任何工作。但是是的,你当然是对的。