Javascript 在c#代码隐藏中添加mouseover属性
我正在使用ASP.NET,在后面的代码中,我需要添加一个属性,当用户将鼠标放在text1上时,该属性使text2出现;下面是我目前拥有的 JS: C#: HTML:Javascript 在c#代码隐藏中添加mouseover属性,javascript,c#,asp.net,Javascript,C#,Asp.net,我正在使用ASP.NET,在后面的代码中,我需要添加一个属性,当用户将鼠标放在text1上时,该属性使text2出现;下面是我目前拥有的 JS: C#: HTML: 这里有两件事: Visible=“false”不是样式,而是服务器端属性。将其设置为false意味着根本不会呈现控件。所以它甚至不存在于客户端,当然也没有办法通过javascript访问它。取而代之的是考虑分配一个 CSS 类,或者至少是一种内嵌样式,如样式=“可见性:隐藏”< /代码> 。 您希望将控件的id用引号括起来。假设您
这里有两件事:
Visible=“false”
不是样式,而是服务器端属性。将其设置为false意味着根本不会呈现控件。所以它甚至不存在于客户端,当然也没有办法通过javascript访问它。取而代之的是考虑分配一个<代码> CSS 类,或者至少是一种内嵌样式,如<代码>样式=“可见性:隐藏”< /代码> id
用引号括起来。假设您的控件以id“blah_blah_text2”结束,您的javascript将如下所示
show(blah_blah_text2);
所以js会尝试将“blah_blah_text2”作为变量进行评估,当然会失败。相反,你想要
show('blah_blah_text2');
所以
visible=true
代表。据我所知,DOM对象中没有这样的属性。您实际上是指document.getElementById(name.style.visibility=“visible”
当用户将鼠标放在text1上时,会出现text2;
下面是我目前拥有的
Html标题属性用于此目的
试试这个:
text2.Attributes.Add("title", text2.ClientID);
希望您正在寻找:
text2.Attributes.Add("onmouseover", "show('" + text2.ClientID +"')");
您是否面临任何错误?请确保不要将asp.net服务器属性与
css
属性混淆visibility=true
是一个asp.net服务器属性,在呈现页面之前解析该属性。javascript对这些属性一无所知像style=“visible:false”这样的行样式是错误的。您必须使用“显示:无”或“可见性:隐藏;”。第二个将保持占位符的原样。还要注意,他的javascript需要修改为…document.getElementById(name.style.visibility='visible'代码>。。。
show('blah_blah_text2');
"show('" + text2.ClientID +"')"
text2.Attributes.Add("title", text2.ClientID);
text2.Attributes.Add("onmouseover", "show('" + text2.ClientID +"')");