在text框下onKeydown事件中怎么取得刚输入的字符

dlxu 2005-03-02 03:01:18
虽然onkeyup事件可以取得,但是text框中也同样显示出刚才你输入的字符,我现在要先把你输入的字符check一下,如果符合要求就显示出来,不符合要求就不显示出来,这个怎么做
...全文
262 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
awaysrain 2005-03-02
  • 打赏
  • 举报
回复
更正
"你把文本框的值和当前输入或粘贴的值连接到一块去不就得到了吗"--这样做有问题

用oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
得到输入后的内容吧

awaysrain 2005-03-02
  • 打赏
  • 举报
回复
或者
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
这个就是文本框中输入后的值
awaysrain 2005-03-02
  • 打赏
  • 举报
回复
你把文本框的值和当前输入或粘贴的值连接到一块去不就得到了吗

function checkIsNumber(obj, inputStr)
{
alert("输入后的值:" + obj.value + inputStr);
var reg = /^-?\d*\.?\d{0,2}$/
var docSel = document.selection.createRange()
if (docSel.parentElement().tagName != "INPUT") return false
oSel = docSel.duplicate()
oSel.text = ""
var srcRange = obj.createTextRange()
oSel.setEndPoint("StartToStart", srcRange)
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
return reg.test(str)
}

----------------------------------------------------------------
原贴内容:
请教一下,怎么样在onkeypress和onpaste事件中得到文本框中输入后的值呢,比如我现在文本框显示123,我在后面再粘贴456,我怎么样得到123456这个串呢
dlxu 2005-03-02
  • 打赏
  • 举报
回复
那如果你要在直接取得文本框修改以后的数值,该怎么做
awaysrain 2005-03-02
  • 打赏
  • 举报
回复
<input type=text id=A100A010_70140_0000007 name=A100A010_70140_0000007 value="" style=" font-size: 10pt ;text-align:right;" onkeypress="return checkIsNumber(this,String.fromCharCode(event.keyCode))" ondrop="return checkIsNumber(this,event.dataTransfer.getData('Text'))" onpaste="return checkIsNumber(this,window.clipboardData.getData('Text'))" >

<SCRIPT LANGUAGE="JavaScript">
<!--
function checkIsNumber(obj, inputStr)
{

var reg = /^-?\d*\.?\d{0,2}$/
var docSel = document.selection.createRange()
if (docSel.parentElement().tagName != "INPUT") return false
oSel = docSel.duplicate()
oSel.text = ""
var srcRange = obj.createTextRange()
oSel.setEndPoint("StartToStart", srcRange)
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
return reg.test(str)
}
//-->
</SCRIPT>
dlxu 2005-03-02
  • 打赏
  • 举报
回复
而且,在onpaste事件中怎么取得你刚paste的值或者paste以后的值
【Html代码】
短信内容: <textarea name=message cols=96 rows=5 onKeyDown=textCounter(message,remLen,65); onKeyUp=textCounter(message,remLen,65);></textarea>
您还可以输入:<input name=remLen type=text value=65 size=

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧