Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击时切换按钮类?c#_Javascript_Asp.net - Fatal编程技术网

Javascript 单击时切换按钮类?c#

Javascript 单击时切换按钮类?c#,javascript,asp.net,Javascript,Asp.net,我目前有一个用c#behind代码生成的列表。我有一个onclick函数,由所有按钮发送。我想做的是在单击发生时传递按钮的对象,这样我就可以切换该特定按钮的类。虽然我相信还有其他方法可以做到这一点,但我的代码如下 protected void createMenu(TreeView navTree) { foreach(TreeNode node in navTree.Nodes){ HtmlGenericControl li = new HtmlGeneri

我目前有一个用c#behind代码生成的列表。我有一个onclick函数,由所有按钮发送。我想做的是在单击发生时传递按钮的对象,这样我就可以切换该特定按钮的类。虽然我相信还有其他方法可以做到这一点,但我的代码如下

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">

}

我想试试那样的

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

如何将ID传递给函数?实际上,在事件中,我想您可以简单地这样做:this.attr('class','Is-open')。这将表示调用事件的元素有没有办法用它调用toggleClass?试试“This.toggleClass(“is open”)”嗯,它似乎不知道什么是“This”我可以这样做吗?Add(“href”,“javascript:navButtonClick(this);”;不要告诉我你在菜单上附加了一个li,然后将ul添加到该li,然后将li添加到ul!怪不得你最终发布了一个坏掉的html!你可以看看html的基本知识,是未排序的列表。
function navButtonClick(buttonID){
navMenu.getbyElementID(buttonID).toggleClass("is-open")
$(".buttonID").attr(‘class’, ‘is-open’) ;