Mottie Keyboard:输入字段等于maxlength时更改焦点

时间:2016-09-21 08:51:47

标签: javascript jquery keyboard virtual-keyboard

如果输入字段等于maxlength,我将自动将输入焦点更改为下一个输入。输入字段与Mottie Keyboard集成。有可能这样做吗?

此处的演示:JSFIDDLE

如果未使用虚拟键盘,则可以轻松使用此代码:

$("input").bind("input", function() {
        var $this = $(this);
        setTimeout(function() {
            if ( $this.val().length >= parseInt($this.attr("maxlength"),10) )
                $this.next("input").focus();
        },0);
    });

当我将上面给出的脚本与Mottie Keyboard结合使用时,它无法正常工作。

2 个答案:

答案 0 :(得分:2)

我认为您还在存储库中打开了issue

总结我的回复,使用using System; namespace program { class program { static void Main(string[] args) { DataCls dataCls = new DataCls(); string message = "[AE][1W] Message:sample message Priority:Info Time:Sep 21 2016 1:13PM Tag:/abc/pqr/xyz"; message = message.Replace("Message:","::").Replace("Priority:","::").Replace("Time:","::").Replace("Tag:","::"); var parts = message.Split("::"); dataCls.Message = parts[0]; dataCls.Priority = parts[1]; dataCls.Time = Convert.ToDateTime(parts[2]); dataCls.Tag = parts[3]; } } public class DataCls { public string Message { get; set; } public string Priority { get; set; } public DateTime Time { get; set; } public string Tag { get; set; } } } 回调和change API函数来完成您的需求(demo):

HTML(示例)

switchInput

脚本

<input type="text" /> <!-- max len = 3 -->
<input type="text" /> <!-- max len = 3 -->
<input class="last" type="text" /> <!-- max len = 4 -->

答案 1 :(得分:0)

尝试使用像这样,希望这将起作用

$("input").on("focus blur", function() {
    var $this = $(this),
        value = $this.val(),
        maxLength = $this.attr("maxlength");
    if ( value.length >= maxLength  ){
       $this.next("input").focus();
    }      
});