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.