By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,453 Members | 961 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,453 IT Pros & Developers. It's quick & easy.

innerHTML not being recognized in FireFox

P: n/a
Hello,

First, this works fine in IE 6.5 and 7. Second, this is javascript
embedded in ASP code. The purpose of this is to assign letters to form
fields that are being rendered in an ASP loop.

First part, I assign a div tag for the "marker" positions:

do Until rs4.EOF
address = address & "<div id=""marker""></div><input type='image'
SRC='images/gobutton.gif' border=0>"
rs4.MoveNext
Loop
rs4.Close
set rs4 = nothing

Second, I confirm that we are getting the object with an alert:

Response.Write("<script type=""text/javascript""var formMarker =
document.getElementsByName('marker');alert(formMar ker);</script>")

Third, I am doing a final loop where I am outputting the values (A, B,
C)

do while iiLoop < totalRecord
Response.Write("<input type=""hidden"" name=""dealerName" & iiLoop &
""" value=""" & dynamicAddressArray(0,iiLoop) & """>")
Response.Write("<p>" & dynamicAddressArray(1, iiLoop))
iiLoop = iiLoop + 1

If iiLoop = "1" Then
Response.Write("<script type=""text/javascript"">
formMarker[0].innerHTML = 'A'</script>")
End If

If iiLoop = "2" Then
Response.Write("<script type=""text/javascript"">
formMarker[1].innerHTML = 'B'</script>")
End If

If iiLoop = "3" Then
Response.Write("<script type=""text/javascript"">
formMarker[2].innerHTML = 'C'</script>")
End If
Loop

I've Googled this, searched through many KB's and forums, tried many
different syntax variations, cannot get FireFox to output these
values.

Thank you for your time,
Buster
Jun 27 '08 #1
Share this Question
Share on Google+
1 Reply


P: n/a
"Buster" wrote:
First, this works fine in IE 6.5 and 7. Second, this
is javascript embedded in ASP code.
No it is not, it is javascript generated by ASP code. When it is "in"
the ASP it is just text, and when it gets to become javascript (when it
reaches the client) the ASP is finished.
The purpose of this is to assign letters to form
fields that are being rendered in an ASP loop.
Browsers do the 'rendering', all this loop does is assemble mark-up to
be sent to a browser.

<snip>
address = address & "<div id=""marker""></div><input
<snip>
Response.Write("<script type=""text/javascript""var
formMarker = document.getElementsByName('marker');
alert(formMarker);</script>")
<snip>

Your DIV elements don't have NAME attributes (and should not have them)
so trying to retrieve a collection of them using - getElementsByName -
should not be expected to be effective. And ID attributes are supposed
to be unique within a single document.

But why attempt to use - innerHTML - to put the content into the DIV
elements on the client when you could put the contents into the DIVs in
the mark-up generated by the ASP on the server?

Richard.
Jun 27 '08 #2

This discussion thread is closed

Replies have been disabled for this discussion.