[问题] onkeypress 在新注音下不会触发

楼主: LaPass (LaPass)   2014-08-28 14:44:34
浏览器是chrome
<input type="text" onkeypress="return intOnly(event,this);">
function intOnly(evt,obj){
evt = evt || window.event;
var k = evt.which || evt.keyCode;
var v= $(obj).val();
console.log("intOnly k("+k+") idx("+v.indexOf('.')+") v("+v+")");
//略,总而言之是在判断输入的值只能是正整数
}
在英数模式下输入是正常的
但是在新注音输入法下
使用数字键输入数字
以及按住shift打英文字
都不会触发 intOnly (这点从console.log没输出判断的)
请问有什么解决的方式吗?
作者: LPH66 (-6.2598534e+18f)   2014-08-28 16:30:00
我猜没有, 因为按键都被新注音截走当做注音输入了浏览器根本就没有收到那个数字自然网页里也不会有...
楼主: LaPass (LaPass)   2014-08-28 16:39:00
那怎么办? 囧.......
作者: oToToT (屁孩)   2014-08-28 17:43:00
不然就onchange小数就四舍五入,非数字就直接空掉
作者: lyforever (LY)   2014-08-28 18:29:00
有个事件叫做compositionstart 跟compositionend
楼主: LaPass (LaPass)   2014-08-29 10:15:00
原来还有这个东西... 感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com