A me sembra che si tratti di un problema legato al lettore: quando effettua la lettura del codice a barre, oltre la sequenza di caratteri numerici, probabilmente ti manda anche un caratteri di "invio". Lo puoi risolvere solo vedendo se č possibile modificare il comportamento del lettore, sostituendo "invio" con "tab". In questo modo invece di inviarti il form salta al campo successivo.