Javascript ASP选项卡容器与clientID有关的问题

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

我想在tab为2时隐藏按钮。总是会出错

<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