=== modified file 'dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js' --- dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js 2011-05-10 08:58:10 +0000 +++ dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js 2011-06-02 02:57:58 +0000 @@ -302,7 +302,7 @@ { var key = event.keyCode || event.charCode || event.which; - var focusField = ( key == 13 || key == 40 ) ? getNextEntryField( field ) : ( key == 38 ) ? getPreviousEntryField( field ) : false; + var focusField = ( key == 13 || key == 40 ) ? getNextEntryField( field ) : ( ( key == 38 ) ? getPreviousEntryField( field ) : false ); if ( focusField ) { @@ -314,16 +314,20 @@ function getNextEntryField( field ) { - var fields = $('input[name="entryfield"]'); - - var index = field.tabIndex; - - while (fields[index]) { - if (!fields[index].disabled) { - return fields[index]; - } - index++; - } + if ( field ) + { + var index = field.getAttribute( 'tabindex' ); + field = $('input[tabindex="'+(++index)+'"]'); + + while ( field ) + { + if ( field.is(':disabled') || field.is(':hidden') ) + { + field = $('input[tabindex="'+(++index)+'"]'); + } + else return field; + } + } } function getPreviousEntryField( field )