Javascript 根据JQuery中相应的按钮ID设置颜色标题

Javascript 根据JQuery中相应的按钮ID设置颜色标题,javascript,html,jquery,Javascript,Html,Jquery,我有有限数量的按钮和标题 html: <button id = "1">1</button> <button id = "2">2</button> <heading id="1">heading1 <button>click</button> </heading> <heading id="2">hea

我有有限数量的按钮和标题

html:

<button id = "1">1</button>
<button id = "2">2</button>

<heading id="1">heading1  <button>click</button>  </heading>
<heading id="2">heading2  <button>click</button>  </heading>
1
2.
标题1单击
标题2点击
我想要一个jquery代码,这样

  • 如果单击id为“1”的按钮,则该id按钮的背景色应变为黄色
  • 如果我单击id=“1”标题标签内的按钮,上面id=“1”的按钮应将其背景颜色更改为红色

  • 我只是以两个按钮和两个标题为例,代码应该使用任意数量的按钮和标题。

    如注释中所述,
    id
    应该是唯一的,因此您可以使用类。试试这个:

    $(“按钮”)。单击(函数(){
    var parentTag=$(this.parent().prop(“标记名”)
    if(parentTag!=“HEADING”){//外部按钮
    $(`heading.${$(this.attr('class')}')).css('background-color','yellow');
    }否则{
    $(`button.${$(this.parent().attr('class')}`).css('color','red');
    }
    })
    
    1.
    2.
    标题1单击
    
    标题2单击
    ,如注释中所述,
    id
    应该是唯一的,因此您可以使用类。试试这个:

    $(“按钮”)。单击(函数(){
    var parentTag=$(this.parent().prop(“标记名”)
    if(parentTag!=“HEADING”){//外部按钮
    $(`heading.${$(this.attr('class')}')).css('background-color','yellow');
    }否则{
    $(`button.${$(this.parent().attr('class')}`).css('color','red');
    }
    })
    
    1.
    2.
    标题1单击
    
    标题2单击
    在两个或多个元素上不能有相同的id。同样:id不应该以数字开头:但是,如果您只是更改为
    data id=“1”
    以上两个注释就变得不相关了。您尝试过吗?请在问题中包括您尝试过的内容。因此,它不是一个代码编写服务。在这种情况下,
    .on(“click”)
    .addClass
    结合使用数据的建议就足够了。在两个或多个元素上不能有相同的id。同样:id不应该以数字开头:但是,如果您只是更改为
    数据id=“1”
    以上两条评论都变得无关紧要。您是否尝试过?请在问题中包括您尝试过的内容。因此,它不是一个代码编写服务。在这种情况下,
    .on(“click”)
    .addClass
    与使用数据的建议相结合就足够了。