423,504 Members | 1,125 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 423,504 IT Pros & Developers. It's quick & easy.

Unusual javascript question on setting a field via code executed from object

P: n/a
I downloaded a calendar.asp file that someone named Jacob "WickedPisser"
Gilley made. It's a few years old but It works fine and it's what I was
looking for without getting into ActiveX objects. But I am having
trouble with something that I beleive it's because of my lack of
JavaScript knowledge.

In the initilizing code, he has:
' Add event code for when a day is clicked on. Notice
' that when run inside your browser, "$date" is replaced
' by the date you click on.
MyCalendar.OnDayClick = "javascript:alert('You clicked on this date:
$date')"

So when I run the page, when I click on a day I get an alert box saying
'You clicked on this date: 3/26/2004', but with the date being the day
that I clicked on. So I wanted to change the javascript to set the
field for the day I clicked on, so I tried several things:

MyCalendar.OnDayClick =
"javascript:document.frmAddVisitCal.AP_DATE.va lue = $date"
MyCalendar.OnDayClick =
"javascript:document.frmAddVisitCal[AP_DATE].value = $date"
MyCalendar.OnDayClick =
"javascript:window.document.frmAddVisitCal.AP_DATE .value = $date"
MyCalendar.OnDayClick =
"javascript:window.document.frmAddVisitCal[AP_DATE].value = $date"
MyCalendar.OnDayClick =
"javascript:window.opener.document.frmAddVisitCal. AP_DATE.value = $date"
MyCalendar.OnDayClick =
"javascript:window.opener.document.frmAddVisit Cal[AP_DATE].value =
$date"

But none of them worked, I get 'Is Null or NOt an object'

So why can't I reference my field object? the form is correct and the
field name is correct.


*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Jul 23 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Colin Colin wrote:
I downloaded a calendar.asp file that someone named Jacob "WickedPisser"
Gilley made. It's a few years old but It works fine and it's what I was
looking for without getting into ActiveX objects. But I am having
trouble with something that I beleive it's because of my lack of
JavaScript knowledge.

In the initilizing code, he has:
' Add event code for when a day is clicked on. Notice
' that when run inside your browser, "$date" is replaced
' by the date you click on.
MyCalendar.OnDayClick = "javascript:alert('You clicked on this date:
$date')"

So when I run the page, when I click on a day I get an alert box saying
'You clicked on this date: 3/26/2004', but with the date being the day
that I clicked on. So I wanted to change the javascript to set the
field for the day I clicked on, so I tried several things:

MyCalendar.OnDayClick =
"javascript:document.frmAddVisitCal.AP_DATE.va lue = $date"
MyCalendar.OnDayClick =
"javascript:document.frmAddVisitCal[AP_DATE].value = $date"
MyCalendar.OnDayClick =
"javascript:window.document.frmAddVisitCal.AP_DATE .value = $date"
MyCalendar.OnDayClick =
"javascript:window.document.frmAddVisitCal[AP_DATE].value = $date"
MyCalendar.OnDayClick =
"javascript:window.opener.document.frmAddVisitCal. AP_DATE.value = $date"
MyCalendar.OnDayClick =
"javascript:window.opener.document.frmAddVisit Cal[AP_DATE].value =
$date"

But none of them worked, I get 'Is Null or NOt an object'

So why can't I reference my field object? the form is correct and the
field name is correct.


You need to put quotes around IDs. I am assuming you have a form with
the ID frmAddVisitCal, and an input called "AP_DATE".

To get the AP_DATE input element, you would write:

document.getElementById("AP_DATE");

But, you are putting that Javascript in ASP code (Not supported on this
group). You will need to write a string like this:

"document.getElementById(\"AP_DATE\");"

Of course, that assumes that you escape quotes with a backslash. If I
remember correctly, VBScript with ASP uses a different syntax, but I
havent done that in years.

Next problem... using the javascript: method. See the FAQ:
http://www.jibbering.com/faq/#FAQ4_24

You should probably use a different method... but without seeing the
code you are actually working with, I cannot suggest any more.

Brian
Jul 23 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.