点击时切换按钮类?c#

toggle button class on click? c#

本文关键字:按钮      更新时间:2023-09-26

我目前有一个在c#代码后面生成的列表。我有一个onclick函数,它是由所有按钮发送的。我想做的是在点击发生时传递按钮的对象,这样我就可以为该特定按钮切换Class。虽然我确信还有其他方法可以做到这一点……这是我的后台代码

protected void createMenu(TreeView navTree) {
        foreach(TreeNode node in navTree.Nodes){
        HtmlGenericControl li = new HtmlGenericControl("li");
        li.Attributes.Add("class", "toggle");
        navMenu.Controls.Add(li);
        HtmlGenericControl anchor = new HtmlGenericControl("a");
        anchor.Attributes.Add("href", "javascript:navButtonClick();");
        anchor.InnerText = node.Text;
        li.Controls.Add(anchor);

        HtmlGenericControl ul = new HtmlGenericControl("ul");
        li.Controls.Add(ul);
        ul.Attributes.Add("class", "subnav"); 
        foreach (TreeNode childNode in node.ChildNodes) {
            HtmlGenericControl child_li = new HtmlGenericControl("li");
            ul.Controls.Add(child_li);
            HtmlGenericControl childAnchor = new HtmlGenericControl("a");
            childAnchor.Attributes.Add("href", "#");
            childAnchor.Attributes.Add("class", "active");
            childAnchor.InnerText = childNode.Text;
            child_li.Controls.Add(childAnchor);
        }
        }

输出如下:

<div id="sidebar">

站点

  <li class="toggle-is-open"><a href=""javascript:navButtonClick();"">Stanislaus</a>
    <ul class="subnav">
       <li><a href="#" class="active">linnie<span class="quantity">7</span></a></li>
       <li><a href="#" class="active">tom<span class="quantity">7</span></a></li>
    </ul>
  </li>
  <li class="toggle-is-open"><a href=""javascript:navButtonClick();">Merced</a>
     <ul class="subnav">
        <li><a href="#" class="active">emmanuel<span class="quantity">7</span></a></li>
     </ul>
</nav>
    </div>

所以我基本上需要像这样的东西

function navButtonClick(buttonID){
navMenu.getbyElementID(buttonID).toggleClass("is-open")

}

我会试试类似的东西

$(".buttonID").attr(‘class’, ‘is-open’) ;