Welcome to WebmasterWorld Guest from 3.234.210.89

Forum Moderators: open

Message Too Old, No Replies

writing tags with javascript in xhtml

doesn't validate

     
3:23 am on Oct 31, 2002 (gmt 0)

Junior Member

10+ Year Member

joined:Mar 19, 2002
posts:120
votes: 0


I am using the javascript statement
document.write("<tag name='foo'>stuff</tag>")
and when I try to validate I get the error "Error: element "tag" not allowed here; check which elements this element may be contained within"

Any suggestions? (yes, I guess I could put it in an external js file)

Also, it seems that javascript events aren't allowed in xhtml, such as <form onSubmit="dostuff()"> . What should I be doing instead?

6:11 am on Oct 31, 2002 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:July 22, 2002
posts:1782
votes: 0


<script type="text/javascript">//<![cdata[ 
alert('hello');
//]]>--></script>
6:34 am on Oct 31, 2002 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Sept 12, 2002
posts:885
votes: 0


Also, it seems that javascript events aren't allowed in xhtml, such as <form onSubmit="dostuff()"> . What should I be doing instead?

Do like Andreas said, then convert all your event attributes to all-lowercase. (i.e., <form onsubmit="dostuff();">) Then the validator will like you. (Or at least your page :))

10:26 pm on Dec 11, 2002 (gmt 0)

Senior Member

WebmasterWorld Senior Member g1smd is a WebmasterWorld Top Contributor of All Time 10+ Year Member Top Contributors Of The Month

joined:July 3, 2002
posts:18903
votes: 0


Don't forget to include both the opening <!-- and closing // --> comment tags, also noting that there must be a space after the opening comment, and another before the closing comment.

Any closing </bar> will "fool" the validator, and give an error. Closing tags within document.write statements need to be broken in two, in order to hide them from the validator, like "</" + "bar>" and so on.

Make sure that the element that you are including with the document.write is valid in that place in the HTML structure; that you are not trying to nest an element where it is not allowed.