当通过页面加载隐藏标签时,标签不显示
Label won't show when label hidden via page load
期望的效果是在页面加载时标签不显示,但是当用户单击复选框时标签显示出来。这个小代码示例只是说明这个问题的一个示例。当标签的Visible属性被设置为false时,代码将总是从javascript返回一个对象引用异常。如果该行被注释掉,它将正确执行,没有对象引用异常,但标签应该在页面加载时隐藏。这个应用程序确实使用了母版页,这就是为什么我们要将clientid传递给javascript Toggle函数。
protected void Page_Load(object sender, EventArgs e)
{
this.chkSelect.Attributes.Add("onClick", "Toggle('" + this.lblAdd.ClientID + "', '" + this.chkSelect.ClientID + "')");
this.lblAdd.Visible = false;
}
<script type="text/javascript">
function Toggle(lblAdd, chk) {
var ctrlAdd = document.getElementById(lblAdd);
var ctrlChk = document.getElementById(chk);
if (ctrlChk.checked == true) {
ctrlAdd.style.display = 'inline';
}
else {
ctrlAdd.style.display = 'none';
}
}
</script>
<asp:Label ID="lblAdd" runat="server" Text="Add" Font-Size="8pt" ForeColor="Blue"> </asp:Label>
<asp:CheckBox ID="chkSelect" runat="server" Text="Check Box1" /><br />
我们如何在Page_Load中隐藏标签,这样我们就不会从Internet Explorer中获得对象引用错误?
谢谢…
如果设置为false,则Visible
属性不会呈现HTML,这就是为什么您会获得空引用(换句话说,ASP。. NET的Visible
与display
CSS属性无关-它实际上切换元素是否在HTML代码中呈现。相反,在页面加载时指定一个定义display: none
的CSS类,然后在点击时使用javascript
相关文章:
- 如何使多个标签显示在JQuery范围滑块中
- 如何使用 JavaScript 向我的 标签显示图像
- DIV 标签显示:内联块;
- 安卓上的html5视频标签显示黑屏
- 高图表.js如何强制 x 轴标签显示所有月份,无论图表大小如何
- 如何在javascript中将服务器端标签显示更改为Block
- 为什么用Javascript RegEx在文本周围包装标签会将标签显示为文本
- 锚点标签显示完整链接问题
- 如何通过按下标签显示隐藏内容使用选择器
- Internet Explorer中的选项标签显示块/无
- js标签显示所有菜单项的最后一个条目的标签
- 过滤一个html页面,所以只有某些标签显示
- 使用angularjs和ionic通过html img标签显示图像
- Sencha不能在控制器中触发我的标签显示事件
- 用html标签显示javascript变量值
- jQuery进度条标签显示“false”
- Highcharts响应式数据标签显示
- 检测标签显示,移除类隐藏
- ZingChart x轴标签显示为数字而不是字符串
- 需要帮助在Div标签显示曲线边界以上的Img