1

所以我命名footer了包含导航到网站的用户控件,我试图将activecss 类附加到用户控件中的 div 以便用户

这是我的footer.ascx

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Footer.ascx.cs" Inherits="UserControls_Footer" %>
<div id="bottom">
    <div class="Footer navbar-fixed-bottom">
        <div class="container">
          <div class="row"> 
            <button id="ImgOption1Guru" class="btn btn-large btn-block btn-primary" runat="server" type="button" onclick="location.href='Option1.aspx';">Option 1</button>
            <button id="ImgCmnyInfo" class="btn btn-large btn-block btn-primary" onclick="location.href='CompanyInfo.aspx';" runat="server" type="button">Info</button>
            <button id="ImgInteract" class="btn btn-large btn-block btn-primary" onclick="location.href='Interact.aspx';" runat="server" type="button">Interact</button>
            <button id="ImgActions" class="btn btn-large btn-block btn-primary" onclick="location.href='Actions.aspx';" runat="server" type="button"> Actions</button>
            <button id="ImgStatus" class="btn btn-large btn-block btn-primary" onclick="location.href='Status.aspx';" runat="server" type="button">Status</button>            
          </div>

        </div>

    </div>
</div>

我在我的aspx页面中使用了这个页脚

<div id="footer"><ucl:Footer ID="foot" runat="server" /></div>

现在我想在他们各自的页面上添加 cssactivebutton id。到目前为止,我已经尝试将代码添加到相应的页面,但它似乎不起作用

<script type="text/javascript">
    var x = document.getElementById("ImgActions");
    x.classname += " " + active;
</script>

我应该怎么做才能访问我的 aspx 页面中用户控件中的标记 ID。

4

1 回答 1

4

您需要使用ClientID控件,因为当您没有将ClientIDMode设置为static. 也classname应该是className

var x = document.getElementById("<%= ImgActions.ClientID %>");
x.className += " " + active;

ASP.NET 为如何生成 ClientID 属性值提供了多种算法。您可以通过设置其ClientIDMode属性来选择用于控件的算法。算法由 ClientIDMode 枚举 Reference 标识。

您可以使用静态 ClientIDMode,因为您在不知道 ImgActions 的不同控件中拥有 javascript。

html

<button id="ImgActions" ClientIDMode="static" class="btn btn-large btn-block btn-primary" onclick="location.href='Actions.aspx';" runat="server" type="button"> Actions</button>

Javascript  

 var x = document.getElementById("ImgActions");
 x.className += " " + active;
于 2013-11-13T06:53:30.383 回答