Thanks for getting back to me, I have sorted the issue (hopefully)
there are three sets of fields that form a date selector they all end in the same two digit number to identify them (which set on which page) this two digit ident is saved to a global variable so that the scripts that then make the day, month and year selector fields un-hide etc
anyway, it turned out that the first set was the one that failed, the other two on the page worked fine. So I deleted set 1 and copied set 2 and placed them where set 1 was, it all worked fine so I just renamed the fields back to set 1 and all was still ok.
The odd thing is that this issue has been there since the first version of the form in 2010 but has only now chosen to surface.
this is the code that the button uses
var fieldExtension = event.target.name.substring(event.target.name.length -2, event.target.name.length)
global.dateField = "date" + fieldExtension
if (this.getField("day" + fieldExtension).display == display.hidden){
showDate()
}else{
hideDate()
}
Anyway, all sorted