如何从ajax选项卡容器获取客户端ID

时间:2019-05-17 05:24:27

标签: asp.net

我没有从ajax tabcontainer获得ID

这里的代码ID需要从tab_container获取ID怎么办!!!!!!!

<script type="text/javascript">

       function my()
       {
           var con = document.getElementById("TabContainer1").value;
           alert(con);
       }         
</script>


 <asp:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="0" Height="100%" Width="50%">
            <asp:TabPanel ID="tabpnl1" runat="server" HeaderText="Role Master">
              <ContentTemplate>                  

                  <asp:TextBox ID="TextBox1" runat="server"  ></asp:TextBox>
                 <asp:Button ID="btn" runat="server" OnClientClick="my()"  /> 

              </ContentTemplate>
            </asp:TabPanel>

显示未定义

1 个答案:

答案 0 :(得分:0)

要在javascript中获取TabContainer1,您需要更改javascript函数的逻辑

代替

function my()
       {
           var con = document.getElementById("TabContainer1").value;
           alert(con);
       }   

尝试使用

 function my()
       {
           var con = document.getElementById("<%= TabContainer1.ClientID %>");
           alert(con);
       }   

作为运行时在dom中加载元素时,其ID将被更改。因此,您可以获取将在DOM呈现的ClientID,而不是将静态ID用作“ TabContainer1”。 我想值也不是容器,因此值也不起作用,因此最好使用.innerHTML而不是.value

或者您可以更改html标签

<asp:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="0" Height="100%" Width="50%" ClientIDMode="Static">

我添加了ClientIDMode="Static",因此它将在DOM中使用“ TabContainer1”,因为将生成静态ID。在这种情况下,您无需更改JavaScript代码。

希望获得帮助