Textarea onchange检测如何使用javascript检测textarea上的更改事件?我正在尝试检测您输入的剩余字符数。我尝试使用onchange事件,但这似乎只在焦点出现时启动。
3 回答
米脂
TA贡献1836条经验 获得超3个赞
对于Google-Chrome,oninput就足够了(在Windows 7上测试版本为22.0.1229.94 m)。
对于IE 9,oninput将捕获除了通过contextmenu和backspace切割之外的所有内容。
对于IE 8,除了oninput之外,还需要onpropertychange来捕获粘贴。
对于IE 9 + 8,需要onkeyup来捕获退格。
对于IE 9 + 8,onmousemove是我发现通过contextmenu捕获切割的唯一方法
没有在Firefox上测试过。
var isIE = /*@cc_on!@*/false; // Note: This line breaks closure compiler...
function SuperDuperFunction() {
// DoSomething
}
function SuperDuperFunctionBecauseMicrosoftMakesIEsuckIntentionally() {
if(isIE) // For Chrome, oninput works as expected
SuperDuperFunction();
}<textarea id="taSource"
class="taSplitted"
rows="4"
cols="50"
oninput="SuperDuperFunction();"
onpropertychange="SuperDuperFunctionBecauseMicrosoftMakesIEsuckIntentionally();"
onmousemove="SuperDuperFunctionBecauseMicrosoftMakesIEsuckIntentionally();"
onkeyup="SuperDuperFunctionBecauseMicrosoftMakesIEsuckIntentionally();">Test</textarea>添加回答
举报
0/150
提交
取消
