|
code
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Escaping the & in Attributes.Add()I am adding an onmouseover attribute using the Attributes.Add() method, and
the String I am using for the value contains the & character. However, when rendered the & is converted to the HTML representation of & which causes my JavaScript not to work. What can I do to prevent the Add() method from modifying my value? Thanks. Hello Nathan,
> I am adding an onmouseover attribute using the Attributes.Add() Any attribute must escape the HTML special characters. An onCLick as well. > method, and the String I am using for the value contains the & > character. However, when rendered the & is converted to the HTML > representation of & which causes my JavaScript not to work. What > can I do to prevent the Add() method from modifying my value? Thanks. Are you sure this is causing the error? -- Jesse Houwing jesse.houwing at sogeti.nl Yes, I am sure because I create the value by assigning a value to a String
variable, and then using that variable in the Attributes.Add() method. For example: Dim onmouseover as String= "my javascript code" 'This contains &'s in my actual code mycontrol.Attributes.Add("onmouseover",onmouseover) When I used this technique and ran a Debug session, the String onmouseover looked exactly as I wanted, but the rendered code had replaced the &'s with & which is what I am trying to avoid. Any ideas? Thanks. Show quote "Jesse Houwing" <jesse.houwing@newsgroup.nospam> wrote in message news:21effc901ff818c9d35ca2bfd396@news.microsoft.com... > Hello Nathan, > >> I am adding an onmouseover attribute using the Attributes.Add() >> method, and the String I am using for the value contains the & >> character. However, when rendered the & is converted to the HTML >> representation of & which causes my JavaScript not to work. What >> can I do to prevent the Add() method from modifying my value? Thanks. > > Any attribute must escape the HTML special characters. An onCLick as well. > Are you sure this is causing the error? > > -- > Jesse Houwing > jesse.houwing at sogeti.nl > > Hello Nathan,
> Yes, I am sure because I create the value by assigning a value to a There are no idea's. The spec says that every attribute must be encoded using > String variable, and then using that variable in the Attributes.Add() > method. For example: > > Dim onmouseover as String= "my javascript code" 'This contains &'s in > my > actual code > mycontrol.Attributes.Add("onmouseover",onmouseover) > When I used this technique and ran a Debug session, the String > onmouseover looked exactly as I wanted, but the rendered code had > replaced the &'s with & which is what I am trying to avoid. Any > ideas? Thanks. html encoding. That includes the &. The javascript perser should work. If you run it in Firefox, what is the message on the javascript console when you click the html element in question (firefox is usually a bit mor eoncise in it's error messages). There must be somethign else wrong here. I tested the code below: <html> <body> <form> <input type="button" onclick="alert(true && true);" value="test"> </form> </body> </html> And it works in both Internet Explorer and Firefox (it should say true in the alert when you click the button). Jesse Show quote > "Jesse Houwing" <jesse.houwing@newsgroup.nospam> wrote in message jesse.houwing at sogeti.nl> news:21effc901ff818c9d35ca2bfd396@news.microsoft.com... > >> Hello Nathan, >> >>> I am adding an onmouseover attribute using the Attributes.Add() >>> method, and the String I am using for the value contains the & >>> character. However, when rendered the & is converted to the HTML >>> representation of & which causes my JavaScript not to work. What >>> can I do to prevent the Add() method from modifying my value? >>> Thanks. >>> >> Any attribute must escape the HTML special characters. An onCLick as >> well. Are you sure this is causing the error? >> >> -- >> Jesse Houwing >> jesse.houwing at sogeti.nl -- Jesse Houwing |
|||||||||||||||||||||||