seguramente habras aplicado mal el evento onchange, te lo aseguro porque siempre ha funcionado.
acerca del submit, pues quizas sea vea esteticamente mal, eso te lo acepto. aun asi no creo que eso justifique la decision de quitar el boton. por ejemplo yo, aunque javascript es mi lenguaje favorito, van mas de un año que navego por la web con javascript inhabilitado. y estoy seguro que no soy la unica persona con este mismo perfil. ahora bien, hay una solucion. con el mismo javascript eleminar el submit. de modo que un usuario con javascript no verá el boton mientras que un usuario sin javascript lo verá. de esa forma no interfieres con las preferencias del usuario. para remover el submit, simplemente necesitas interactuar con el
DOM.
por ultimo, para enviar un formulario automaticamente, por obligacion es necesario invocar el metodo
submit como lo has estado haciendo.