Ciao,
non credo che serva scomodare jQuery, puoi provare così:

codice:
<html>

<head>
   <script type="text/javascript">
      function contr_lungh(campodata) {
         if (campodata.value.length == 10) {
            document.getElementById("campo_"+campodata.id.split("_")[1]).focus();
         }
      }
   </script>
</head>

<body>
   <form>
      <input type="text" id="data_1" onkeyup="contr_lungh(this)">
      <input type="text" id="campo_1">
      

      <input type="text" id="data_2" onkeyup="contr_lungh(this)">
      <input type="text" id="campo_2">
      

      <input type="text" id="data_3" onkeyup="contr_lungh(this)">
      <input type="text" id="campo_3">
   </form>
</body>

</html>
come vedi i tre campi data chiamano una funzione che tramite la split preleva il numero del campo data da cui è stata chiamata e se la lunghezza è 10 passa il focus al campo seguente, cioè quello che ha lo stesso numero.

Può andarti bene?