2013-04-30 57 views
0
Dim hyp = New HyperLink() 
hyp.ID = a_taglist(itags) 
hyp.Attributes.Add("onmousedown", "return clk('" & a_taglist(itags) & "')") 
panel1.Controls.Add(hyp) 

超鏈接對象的屬性我想該行:添加撇號和其他字符在ASP.NET VB

hyp.Attributes.Add("onmousedown", "return clk('" & a_taglist(itags) & "')") 

要將onmousedown事件屬性添加到超鏈接。

這是一種作品,但它被替換爲& # 39;

onmousedown="return clk(& #39;bavaria& #39;)" 

我該如何避免這種情況。我試圖"\"逃脫它,並已發送char(&#39)

任何想法?

+0

難道這些#39;打破你的客戶端腳本? – Netricity 2013-04-30 14:20:46

+0

你試過'「javascript:return clk(''&a_ta​​glist(itags)&」')「'? – valverij 2013-04-30 16:23:37

+0

@你的權利,這是好的,只是很難現在閱讀:(問題是onmousedown事件不會超過一次。 – bendecko 2013-05-01 10:30:10

回答

0

這只是一個安全功能introduced (apparently) in .NET 4.0。關鍵是要防止XSS攻擊,但在實踐中,它不應該成爲你的問題。例如,

參見this jsfiddle

<input type="button" value="Click Me" onclick="alert(&#39;Hello&#39;);" /> 
+1

http://compgroups.net/comp.lang.javascript/onmousedown-is-not-what-i-expect-in-java/349643 – bendecko 2013-05-01 10:31:01

+0

耶沒問題,問題在於onmousedown事件只發射一次,我的js正在切換一個效果,我雖然被打破了js。 – bendecko 2013-05-01 10:32:08

相關問題