更改输入上的输入标签

时间:2018-06-18 14:28:36

标签: javascript jquery forms cakephp form-submit

这是我在cakephp中用户登录的完整代码:

<div class="form-group col-lg-2 col-md-4" id="login-box" style="text-align:center; margin: 100px auto 0 auto;">
    <div style="font-size:3em;text-align: center;">
        <i class="fas fa-table"></i> 
    </div>
    <div style="text-align: center;font-size: 50px;font-family: 'Tahoma';">
    Fatables
    </div>
    <br>
    <div class="header" style="text-align:center"><?php /*echo __('Authenticate');*/?></div>
    <br>
    <form action="<?php echo $this->Html->url( array('controller'=>'users','action'=>'loginmodal')); ?>" method="post">
        <div class="body">
            <div class="form-group">
                <input type="text" name="username" id="username" class="form-control" placeholder="Username" autofocus/>
            </div>
            <div class="form-group">
                <input type="password" name="password" id="password" class="form-control" placeholder="Password"/>
            </div>          
        </div>
        <div class="footer">                                                               
            <button type="submit" class="btn btn-primary"><?php echo __('Sign In');?></button> 
        </div>
    </form>
    <br/>
    <p >&copy; Fatables <?php echo date('Y');?></p>
</div>
<script type=“text/javascript”>
$("#username").on("keypress", function(e) {
    /* ENTER PRESSED*/
    if (e.keyCode == 13) {
        /* FOCUS ELEMENT */
        var inputs = $(this).parents("form").eq(0).find(":input");
        var idx = inputs.index(this);

        if (idx == inputs.length - 1) {
            inputs[0].select()
        } else {
            inputs[idx + 1].focus(); //  handles submit buttons
            inputs[idx + 1].select();
        }
        return false;
    }
});
</script>

正如你所看到的那样,当我按下第一个输入时,我正试图将ENTER更改为TAB。事情是我们使用条形码扫描仪,在大多数情况下,表格数据将通过扫描填充,所以我想要确定输入,以便在按下时将焦点更改为下一个。

出于某种原因,上述(以及更多方法)不起作用,我不知道我的语法,选择器或函数本身是否有问题。

我会感激一些帮助。

0 个答案:

没有答案