javascript – 如何使用箭头键在gridview中转到不同的文本框
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何使用箭头键在gridview中转到不同的文本框,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2940字,纯文字阅读大概需要5分钟。
内容图文
![javascript – 如何使用箭头键在gridview中转到不同的文本框](/upload/InfoBanner/zyjiaocheng/777/2982a9c6b403436091c381a33fa794e6.jpg)
我有一个gridview,因为每行有3个文本框.
如果我按下向下箭头,它应该转到下一行文本框
如果我按向上键,那么它应该去前一行文本框.
左右箭头键相同.
这是我的代码.
<script type="text/javascript" language="javascript">
$(document).ready(function () {
$("body").keydown(function (e) {
var row;
debugger;
if (e.keyCode == 39) {
row = $(this).closest('td').next();
row.find('input').focus();
}
else if (e.keyCode == 37) {
row = $(this).closest('td').prev();
row.find('input').focus();
}
else if (e.keyCode == 40) //down arrow key code
{
row = $(this).closest('tr').next();
row.closest('td').next().find('.masked').focus();
}
else if (e.keyCode == 38) // up arrow key code
{
row = $(this).closest('tr').next();
row.closest('td').prev().find('.masked').focus();
}
}); //this code detect is it up or down arrow
});
</script>
HTML派生代码
' <tr>
<td style="width:1%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:5%;">
<input id="ContentPlaceHolderMain_grdDistanceLog_txttime_0" class="masked ui-mask" type="text" style="width:50px;display:block;" maxlength="8" name="ctl00$ContentPlaceHolderMain$grdDistanceLog$ctl02$txttime">
<span id="ContentPlaceHolderMain_grdDistanceLog_lbltime_0" style="display:none;"></span>
</td>
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:7%;">
<td style="width:3%;">
<td style="width:4%;">
</tr>
<tr class="alt">
<td style="width:1%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:3%;">
<td style="width:5%;">
<input id="ContentPlaceHolderMain_grdDistanceLog_txttime_1" class="masked ui-mask" type="text" style="width:50px;display:block;" maxlength="8" name="ctl00$ContentPlaceHolderMain$grdDistanceLog$ctl03$txttime">
<span id="ContentPlaceHolderMain_grdDistanceLog_lbltime_1" style="display:none;"></span>
</td>
<td style="width:3%;">'
解决方法:
如果没有HTML,这就更多的是猜测,但它看起来像是row.closest(‘td’).next()没有得到你正在寻找的TD.
尝试:
…
{
row = $(this).closest('tr').next();
row.find('td').find('.masked').focus();
}
else if (e.keyCode == 38) // up arrow key code
{
row = $(this).closest('tr').next();
row.find('td').find('.masked').focus();
}
编辑:
随着HTML的到位,在我看来,现在的问题是$(这个)不是你当前关注的元素,正如你所期望的那样,而是$(文档),你在那里解雇了keydown事件.首先尝试选择聚焦元素:
$(document).ready(function () {
$("body").keydown(function (e) {
var row;
var focusedElement = $(document.activeElement);
debugger;
if (e.keyCode == 39) {
row = $(focusedElement).closest('td').next();
row.find('input').focus();
}
else if (e.keyCode == 37) {
row = $(focusedElement).closest('td').prev();
row.find('input').focus();
}
else if (e.keyCode == 40) //down arrow key code
{
row = $(focusedElement).closest('tr').next();
row.find('td').find('.masked').focus();
}
else if (e.keyCode == 38) // up arrow key code
{
row = $(focusedElement).closest('tr').next();
row.find('td').find('.masked').focus();
}
});
});
内容总结
以上是互联网集市为您收集整理的javascript – 如何使用箭头键在gridview中转到不同的文本框全部内容,希望文章能够帮你解决javascript – 如何使用箭头键在gridview中转到不同的文本框所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。