如何使用enter将光标移动到下一个文本框而不是提交?

时间:2016-05-19 03:47:13

标签: javascript asp.net vb.net

screenshot我正在尝试按Enter将光标移动到下一个文本框。

这是我的aspx代码:

<strong>
                    <asp:Label ID="bondtapelbl" runat="server" Text="Bond Tape :" Font-Bold="True" Font-Italic="False" Font-Names="Arial Black" Font-Size="Medium"></asp:Label>
                </strong>
                <asp:TextBox ID="bondtape" runat="server" BackColor="#CCCCCC" Height="35px" Font-Size="Medium" Width="130px" CssClass="bt" />

                &nbsp;<span class="auto-style6">&amp;</span><strong>
                    <asp:Label ID="productranklbl" runat="server" Text="Product Rank :" Font-Bold="True" Font-Italic="False" Font-Names="Arial Black" Font-Size="Medium"></asp:Label>

                    <asp:TextBox ID="productrank" runat="server" BackColor="#CCCCCC" Height="35px" Font-Size="Medium" Width="130px" CssClass="pr" />

                    <asp:Button ID="bontapeButton" Text="Search" runat="server" BackColor="#3399FF" BorderStyle="None" CssClass="btsearch" ForeColor="White" Height="39px" Width="80px" />
                </strong></td>

我正在使用javascript。问题是,它不是将光标移动到下一个文本框,而是自动执行搜索按钮。

   <script type="text/javascript">

                //Bind keyup event to textbox
                $('btsearch[type="bondtape"]').keyup(function (event) {
                    if (e.keyCode == 13) {
                        $("pr").next().focus();
                    }
                });

            </script>

我的javascript基于我从其他论坛得到的答案:

$('input[type="textbox"]').keyup(function(e) {
if(e.keyCode == 13) {
    $(this).next().focus();
}});

我只学习了2/3天的javascript,所以我真的不知道哪个部分我错了。如果有人能帮助我,我将不胜感激。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

好吧,我只想分享我得到的答案。这是我得到答案的链接(您也可以尝试演示):http://www.latentmotion.com/downloads/enter-to-tab.html
以下是与我的项目一起使用的javascript。我得到的解决方案是我用下面的javascript替换了我的问题javascript。我希望这可以帮助其他人。

 $(document).ready(function(){
        $("input").not( $(":button") ).keypress(function (evt) {
            if (evt.keyCode == 13) {
                iname = $(this).val();
                if (iname !== 'Submit'){    
                    var fields = $(this).parents('form:eq(0),body').find('button,input,textarea,select');
                    var index = fields.index( this );
                    if ( index > -1 && ( index + 1 ) < fields.length ) {
                        fields.eq( index + 1 ).focus();
                    }
                    return false;
                }
            }
        });
    });