質問: 13 ) { // 「」にフォーカスを当てる $('input[name=txtYear + i + 1]').focus(); return false; } }); } 実行すると Error: Syntax error, unrecognized expression: input[name=txtYear + i] と表示されます 'input[name=txtYear + i]' この部分の文法(書き方が悪い)のは解るのですが、対応方法が解らず投稿しました よろしくお願いします
回答: この手の処理はnameで判断するのではなくtabindexで処理したほうが良いのでは? ``` $(function(){ $('input[type=text]').on('keydown',function(e){ if(e.keyCode==13){ var ti=parseInt($(this).prop('tabindex')); if(ti<=0) return false; var flg=(typeof $('input[tabindex='+(ti+1)+']').get(0)!=="undefined"); $('input[tabindex='+(flg?ti+1:1)+']').focus(); } }); }); ``` ``` 年1: 月1: 日1: 年2: 月2: 日2: 年3: 月3: 日3: dummy1: dummy2: dummy3: ```