April 7, 2012

JavaScript – Input a date then autopopulate next field with difference

Question by user1318430

Hi this is making me nuts. I am not a developer. Trying to get this to work.
User puts in a date (hire date) into form using Date object (calendar)
Next field should take that date and subtract todays date to get the length of employment.
But I get undefined in the field AND my original hire date disappears.
Here is what I have, help please, much appreciation!

//grab date of hire
try{document.getElementById("dData_DOH").onchange =          custom_calculateDate;}catch(e){}
//not sure if necessary - field that the difference should go to
try{document.getElementById("dData_LengthEmp").onblur =     insertDate;}catch(e){}

//Function to grab input hire date 
//Create variable for now
//Create variable for difference


function custom_calculateDate(){
 var hireDate = document.getElementById("dData_DOH").value = "";
     var timeNow= new Date();
 var diff = Math.abs(timeNow - hireDate);
document.getElementById("dData_DOH").setAttribute('value',     custom_calculateDate());
     }

//Function to get the difference into the LengthEmp field    
function insertDate() {
document.getElementById("dData_LengthEmp").setAttribute("",     custom_calculateDate());
}

I know this is completely wrong, as I said I am not a developer or programmer, I cannot figure out how to get this information into this field and get my original field to still show.

Thank you for reading this!

Answer by Starx

Use value instead of setAttribute

document.getElementById("dData_DOH").value = custom_calculateDate();

Author: Nabin Nepal (Starx)

Hello, I am Nabin Nepal and you can call me Starx. This is my blog where write about my life and my involvements. I am a Software Developer, A Cyclist and a Realist. I hope you will find my blog interesting. Follow me on Google+

...

Please fill the form - I will response as fast as I can!