Javascript 通过按Enter键,移动到ASP.Net中的下一个文本框
我有两个文本框和一个按钮控件…在第一个文本框中,当按enter键移动到下一个文本框(条形码)时,当我在条形码文本框中按enter键时,它触发按钮单击事件…直到确定为止 但是,在启动按钮后,即使单击“在条形码文本框中输入”也会返回到第一个文本框……但我希望它保持在同一个条形码文本框中,以扫描更多的条形码 代码如下Javascript 通过按Enter键,移动到ASP.Net中的下一个文本框,javascript,asp.net,jquery,Javascript,Asp.net,Jquery,我有两个文本框和一个按钮控件…在第一个文本框中,当按enter键移动到下一个文本框(条形码)时,当我在条形码文本框中按enter键时,它触发按钮单击事件…直到确定为止 但是,在启动按钮后,即使单击“在条形码文本框中输入”也会返回到第一个文本框……但我希望它保持在同一个条形码文本框中,以扫描更多的条形码 代码如下 <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery
<script type="text/javascript"
src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js">
</script>
<Head>
<script type="text/javascript">
$(function() {
$('input:text:first').focus();
var $inp = $('input:text');
$inp.bind('keydown', function(e) {
//var key = (e.keyCode ? e.keyCode : e.charCode);
var key = e.which;
if (key == 13) {
e.preventDefault();
var nxtIdx = $inp.index(this) + 1;
$(":input:text:eq(" + nxtIdx + ")").focus();
}
});
});
</script>
</Head>
$(函数(){
$('input:text:first').focus();
var$inp=$('input:text');
$inp.bind('keydown',函数(e){
//var key=(e.keyCode?e.keyCode:e.charCode);
var-key=e.which;
如果(键==13){
e、 预防默认值();
var nxtix=$inp.index(this)+1;
$(“:输入:text:eq(“+nxtix+”).focus();
}
});
});
您正在为每个文本框处理按键
您需要修改您的选择器,使其仅处理第一个文本框的keydown
。按钮单击将导致回发到服务器并重新加载页面,该页面将重新执行您发布的javascript,包括此行:
$('input:text:first').focus();
它将焦点设置在第一个文本输入上
如果没有HTML,我无法提供很多解决方案,但希望了解原因可以为您指明正确的方向。我不知道您在问什么。同样,您只会在JavaScript第2行的第一个文本输入上触发焦点事件,我可以想象,我不懂JavaScript,我只是从网络上得到了这段代码,我是初学者,这就是为什么我要问……你们是否可以更正这段代码。我会通知你的