getElements是类中的第一个span

时间:2017-10-13 17:56:26

标签: jquery html innerhtml getelementsbytagname getelementsbyclassname

我尝试使用以下内容更改HTML中第一个按钮的HTML文本,但它有效:

var list = document.getElementsByTagName('button')[0];
list.innerHTML = "AAA";

但我正在寻找一个更好的解决方案,我可以指定确切的"位置"的按钮。例如:

document.getElementsByClassName('filter. > .btn-group > button').innerHTML = 'AAAA';

摘录如下:



var list = document.getElementsByTagName('button')[0];
list.innerHTML = "AAA";


//I am looking something like the below:

//document.getElementsByClassName('filter. > .btn-group > button > span > .multiselect-selected-text').innerHTML = 'AAAA';

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="filter">

<div class="btn-group"><button type="button" class="multiselect dropdown-toggle btn btn-default" data-toggle="dropdown" title="None selected"><span class="multiselect-selected-text">None selected</span> <b class="caret"></b></button><ul class="multiselect-container dropdown-menu"><li><a tabindex="0"><label class="checkbox"><input type="checkbox" value="0"> AA</label></a></li><li><a tabindex="0"><label class="checkbox"><input type="checkbox" value="1"> BB</label></a></li></ul></div>

<div class="btn-group"><button type="button" class="multiselect dropdown-toggle btn btn-default" data-toggle="dropdown" title="None selected"><span class="multiselect-selected-text">None selected</span> <b class="caret"></b></button><ul class="multiselect-container dropdown-menu"><li><a tabindex="0"><label class="checkbox"><input type="checkbox" value="0"> AA</label></a></li><li><a tabindex="0"><label class="checkbox"><input type="checkbox" value="1"> BB</label></a></li></ul></div>

</div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

然而,jQuery解决方案可以是以下任何一种:

$(".filter > .btn-group > button").html("AAAA");

或者

$(".filter").children(".btn-group").children("button").html("AAAA");

或者,任何类似的组合。

我建议您查看此short article

此外,如果您在button下有多个.btn-group并且您只想影响第一个$(".filter").children(".btn-group").children("button").first().html("AAAA"); ,则可以使用first()。像这样:

setTheme()

答案 1 :(得分:0)

使用querySelector:

document.querySelector('.filter > .btn-group > button').innerHTML = 'AAAA';