【发布时间】:2013-01-11 18:25:33
【问题描述】:
我希望输入字段仅接受数字,因此,在其他技术中,如果输入字段中的结果不是正确的数字,我还阻止了默认放置事件。为此,在 IE 中,我将焦点放在要放置文本的字段,搜索光标位置(字符索引),然后根据旧值和拖动的文本构造新值。
获取插入符号位置:
IE: Math.abs(document.selection.createRange().moveStart("character", -1000000)) 工作
FF,Chrome: inputfield.selectionStart 不起作用
任何想法如何在放置处理程序中获取字符索引?
【问题讨论】:
-
不知道为什么您的代码不起作用,但我可以建议一种更简单的方法来解决您的问题吗?与其处理所有可能的事件,不如使用一个计时器定期检查字段的内容,并在它不是有效数字的情况下将其恢复为最后一个已知的正确值。
-
它可能无法正常工作,因为此时光标实际上并不存在,该事件是鼠标事件。无论如何,谢谢你的建议,我会考虑的。
标签: javascript jquery