JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<table>
<tr>
<td><input type='text' tabIndex='1' size=5/></td>
<td><input type='text' tabIndex='3' size=5/></td>
<td><input type='text' tabIndex='4' size=5/></td>
<td><input type='text' tabIndex='2' size=5/></td>
</tr>
</table>
JavaScript
$('input').keypress(function(event){
if(event.which == '13') //ENTER
{
var tabIndex = $(this).attr('tabIndex');
var all_inputs = $(this).closest('table').find('input:visible');
var inputs = all_inputs.filter(function() {
return $(this).attr("tabIndex") > tabIndex;
})
if(inputs.length != 0)
{
inputs = $(inputs).sort(function(a,b){
return $(a).attr('tabIndex')-$(b).attr('tabIndex');
});
}
else
{
inputs = $(all_inputs).sort(function(a,b){
return $(a).attr('tabIndex')-$(b).attr('tabIndex');
});
}
var elem = inputs.eq( inputs.index(this)+ 1 );
if(elem.length == 0)
elem = inputs.eq(0);
elem.focus();
event.preventDefault();
}
});