我已合并来自http://jsbin.com/oleto5/5/edit?html,js,output和http://jsfiddle.net/AEMLoviji/tABDr/
的此脚本但代码中存在一些问题:$('#numbers').val($('#tt').val()+String.fromCharCode(event.keyCode));
如果我删除+String.fromCharCode(event.keyCode));
并将脚本替换为.substr(-2));
则无效。
当我删除数字时,如果我使用+String.fromCharCode(event.keyCode));
并不完美。
示例:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>berkelilingkesemua.info</title>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" class="jsbin" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js" type="text/javascript" class="jsbin"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.js" type="text/javascript" class="jsbin"></script>
</head>
<body>
<script type="text/javascript">
$(function(){
$('#txt').keydown(function(){
setTimeout(function() {
$('#output').text($('#txt').val().substr(-2));
}, 50);
});
});
</script>
<input id="txt" type="text" />
<div id="output"></div>
<hr>
Second script is combined by me from first script becomes like below.
<hr />
<script type="text/javascript">
$(document).ready(function() {
$("#tt").keydown(function (event) {
setTimeout(function() {
}, 50);
{
$('#numbers').val($('#tt').val()+String.fromCharCode(event.keyCode));
}
});
});
</script>
<input type="text" id="tt" />
<input type="text" id="numbers" />
</body>
</html>
&#13;
是否有关于此脚本的解决方案?。
答案 0 :(得分:0)
我认为你是在追求以下之一。
$('#output').text( $(this).val().slice(0, -2) );
$('#output').text( $(this).val().slice(-2) );
使用.slice()
的演示:
$(function() {
$('#txt').keyup(function() {
var $this = $(this);
$('#output1').val( $this.val().slice(0, -2) ); //Grab everything but the last 2 characters.
$('#output2').val( $this.val().slice(-2) ); //Grab the last 2 characters.
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="txt" />
<br/><br/>
<input type="text" id="output1"></span><br/>
<input type="text" id="output2"></span>
答案 1 :(得分:0)
让我们分析一下: 1.您正在使用HTML5,那么为什么不使用&#34;输入&#34;事件?它比#34; keyup&#34;更可靠。 2.为了加快速度,总是尝试将DOM元素存储在变量中,这样您每次都不必浏览所有DOM树,只需按一个按钮 3.使用slice()方法获取正确的字符串。
var source = $("#tt"),
target = $("#numbers");
source.on('input', function() {
target.val(source.val().slice(-2));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="tt" />
<input type="text" id="numbers" />
&#13;