Cita:  Estás tratando de convertir objetos a texto por las bravas.
    De ahí que te diga que no tienen sentido. 
alert(form[campo].value) -> Contenido del campo 
alert(form[campo]) -> No tiene sentido
alert(form) -> No tiene sentido 
He probado tu código con esta corrección y el alert sale bien, y tú mismo has dicho que la parte de las horas (que lee el valor del campo) funciona bien, así que sigo sin entenderte.