Javascript ASP选项卡容器与clientID有关的问题
我想在tab为2时隐藏按钮。总是会出错Javascript ASP选项卡容器与clientID有关的问题,javascript,asp.net,vb.net,asp.net-ajax,tabcontainer,Javascript,Asp.net,Vb.net,Asp.net Ajax,Tabcontainer,我想在tab为2时隐藏按钮。总是会出错 <script type="text/javascript"> function clientActiveTabChanged(sender, args) { if ((sender.get_activeTabIndex()) == '2') { alert(sender.get_activeTabIndex()); var messageElement = document.getElementById('<%= di
<script type="text/javascript">
function clientActiveTabChanged(sender, args) {
if ((sender.get_activeTabIndex()) == '2')
{
alert(sender.get_activeTabIndex());
var messageElement = document.getElementById('<%= divMessage.clientID%>').value;
messageElement.style.display = 'block';
}
}
</script>
<body>
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"
EnableScriptGlobalization="True"></asp:ToolkitScriptManager>
<asp:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="0"
Width="100%" BorderStyle="None" OnClientActiveTabChanged="clientActiveTabChanged">
<asp:TabPanel runat="server" ID="TabPanel1">
<HeaderTemplate>Test1</HeaderTemplate>
<ContentTemplate></ContentTemplate>
</asp:TabPanel>
<asp:TabPanel runat="server" ID="TabPanel2">
<HeaderTemplate>Test2</HeaderTemplate>
<ContentTemplate></ContentTemplate>
</asp:TabPanel>
<asp:TabPanel runat="server" ID="TabPanel3">
<HeaderTemplate>Test3</HeaderTemplate>
<ContentTemplate></ContentTemplate>
</asp:TabPanel>
</asp:TabContainer>
<div runat="server" id="divMessage" style="display: none;">
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
</body>
</html>
函数ClientActivateABC已更改(发送方,参数){
如果((sender.get_activeTabIndex())==“2”)
{
警报(sender.get_activeTabIndex());
var messageElement=document.getElementById(“”).value;
messageElement.style.display='block';
}
}
测试1
测试2
测试3
您正在使用按钮元素上的.value。这将返回按钮的文本,该文本是字符串,没有样式。以下几点应该行得通。
此外,您还提到要隐藏它,但将显示设置为“阻止”。应该没有
var messageElement = document.getElementById('<%= divMessage.clientID%>');
messageElement.style.display = 'block';
var messageElement=document.getElementById(“”);
messageElement.style.display='block';
“始终获取错误”我缺少错误。[HttpException(0x80004005):De Controls verzameling kan niet worden gewijzigd omdat het besturingselection code blokken bevat(即)]System.Web.UI.ControlCollection.Add(Control child)+9600651以这种方式:函数clientactivatebchanged(sender,args){if((sender.get\u activeTabIndex())=='2'){alert(sender.get_activeTabIndex());var messageElement=document.getElementById('');messageElement.style.display='none';}}错误:[HttpException(0x80004005):De Controls-verzameling-kan-niet-worden-gewijzigd-omdat-het-besturingselection-codeboken-bevat(即)]System.Web.UI.ControlCollection.Add(控制子项)+9600651