[英]javascript and css in asp.net
我正在使用c#将应用程序移动到asp.net中,其中已经有一些javascript。
我有以下javascript函数:
function toggle(id) {
var tog = document.getElementById(id);
if (tog == null) { return; }
var bExpand = tog.style.display == '';
tog.style.display = (bExpand ? 'none' : '');
}
我称之为<a href="javascript:void(0);" onclick="toggle('programinfo');" class="nobold">[-]</a>
<a href="javascript:void(0);" onclick="toggle('programinfo');" class="nobold">[-]</a>
正如您所看到的,它唯一能做的就是将display属性从none切换为空白,使id'programinfo'显示或不显示。
来自coldfusion它完美地工作,我只有一个名为programinfo的div,它会在每次点击链接时显示或不显示div的内容。 但是,它现在没有做任何事情。 如果我在值tog.style.display
上添加一个警告它会显示一个空白值,或者值为none,所以我知道它正在获取值,但它不再翻转该值。
我在div和table上都尝试过,没什么。 然后我甚至尝试添加一个style="display:none;"
默认情况下,为了使它消失而对表进行属性,但即便如此仍然无法正常工作。
我在这一点上的唯一猜测是它与asp有关,但我无法在任何地方找到它,所以我不确定。 有没有人有任何想法? 谢谢。
编辑 - 通过请求将html输出发送到浏览器:
<table width="100%" border="0" class="dgbc" cellspacing="0" cellpadding="5">
<tr>
<td colspan="12" class="section_header" style="background-repeat:no-repeat;background-image:url(images/tms_side1.jpg);margin:0;background-position:right;">
<span style="float: right;"><a href="javascript:void(0);" onclick="toggle('programinfo');" class="nobold">[-]</a></span>
PROGRAM INFO
</td>
</tr>
<tr>
<td valign="top">
<table width="100%">
<div id="programinfo" style="display:none;">
blah blah blah
</div>
</table>
</td>
</tr>
</table>
我认为你遇到的问题是HTML标签无效使用。
<table width="100%">
<tr>
<td>
<div id="programinfo" style="display: none;">
blah blah blah
</div>
</td>
</tr>
</table>
将Div标签放在td和tr中。 您将解决问题。 这个问题在IE6和IE7中仍然存在。 希望这可以帮助。
如果您从"display:none"
,然后将显示切换为空白,那么会显示什么? CSS中有"display:block"
吗? 您可以尝试将显示屏切换为'block'
而不是空白吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.