0

これは機能したくないので、次があるかどうかをテストするにはどうすればよいですか?

どういうわけかいつも3つの要素を数えますか?

$("body "+content).on("keypress","form.fcheckoutform :input.aantal",function(e) {
        if (e.keyCode === 9) { 

            var nextItem = $(this).nextAll();

            if (!nextItem.length) { 
                $(content+ '.aantal:eq(0)').focus();
                return false;
            }
            $(this).nextAll().focus();
        }
    });

編集: 解決しました

$("body "+content).on("keypress","form.fcheckoutform :input.aantal",function(e) {
        e.preventDefault();
        if (e.keyCode === 9) { 
            var nextItem = $(this).parents('.item-checkout').next().children('form').children('div.fr').find('.aantal');
            if (!nextItem.length) { 
                $(content+ ' .aantal:first').focus();
            }else{
                nextItem.focus();
            }
        }
    });

ありがとう、リチャード

4

1 に答える 1

0

これを試して:

$("body "+content).on("keypress","form.fcheckoutform :input.aantal",function(e) {
    if (e.keyCode === 9) { 

        var nextItem = $(this).nextUntil(':input.aantal').next();

        if (!nextItem.length) { 
            $(content+ '.aantal:eq(0)').focus();
            return false;
        }
        $(this).nextUntil(':input.aantal').next().focus();
    }
});
于 2012-06-26T19:21:59.497 に答える