Si puedes agregar esta funcion como un listener a tu input lo deberia de hacer, a cad ocasion que presiona un tecla cambia todo a mayuscuclas--
  
Código:
 function solo_may(e)
{
   e.target.value=e.target.value.toUpperCase();
}
  ah encontre una funcion que te agrega la funcion de arriba como listener...  
Código:
 /*
Parametros:
    elemento  - Objeto al que se le agregara la funcion del evento especificado
    nomevento - nombre del evento al que se le asignara un handler
    funcion   - nombre de la funcion o handler que tratara el evento
    captura   - Siempre es false, un parametro que se ocupa si el explorador que se usa no soporta el attachEvent
      
Descipcion: Funcion que agrega un handler al evento esecificado para el objeto indicado.
*/
function addEvent(elemento,nomevento,funcion,captura)
    {
        if(elemento.attachEvent)
            {
                elemento.attachEvent('on'+nomevento,funcion);
                return true;
            }
        else
            {
                if(elemento.addEventListener)
                    {
                        elemento.addEventListener(nomevento,funcion,captura);
                        return true;
                    }
                else
                    return false;
            }
    }
  Si tu input tiene un id supongamos input_deseado, el addEvent se aplciaria asi 
Código:
 addEvent(document.getElementById('input_deseado'),'keypress',solo_may,false);
  Espero te sirva....