0

클래스의 첫 번째 범위는 다음과 일한 :getElementsBy 내가 사용 HTML에서 첫 번째 버튼의 HTML 텍스트를 변경 시도

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

하지만이를 지정할 수있는 나는 더 나은 솔루션을 찾고 있어요 버튼의 정확한 "위치". 예를 들어 :

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>

+1

'document.querySelector'가 필요합니다. 다음을 참조하십시오 : https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector –

+0

jQuery 태그가 지정되었습니다. 그러나이 코드는 기본 JavaScript입니다. jQuery 솔루션을 찾고 계십니까? 그렇지 않다면 – Mojtaba

+0

@Mojtaba 예 태그를 제거하십시오. 나는이 경우 jQuery를 선호한다. –

답변

0

가 querySelector 사용 :

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

이 코드 조각이 아래에 주어진다 그러나

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

필터 클래스와 btn-group 사이에 select 태그가 있고 filter1이라는 다른 클래스가 있습니다. filter1 클래스를 추가하면 작동하지 않습니다. –

1

를, JQuery와 솔루션은 다음 중 하나가 될 수있다 :

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

또는

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

또는

, 유사한 조합.

난 당신이 .btn-group에서 하나 이상의 button이있는 경우, 또한이 short article

를 살펴 좋습니다 당신은 단지 첫 번째에 영향을하려면, 당신은 first()를 사용할 수 있습니다. like :

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

@Motjaba 그러면 모든 버튼의 이름이 바뀝니다. 하지만 그것은 나중에 참조 할 때 도움이됩니다. –

+0

@ApoloRadomer, 이전 대답과 정확히 일치합니다. 첫 번째 '버튼'을 선택하는 방법을 보여주기 위해 답변을 업데이트했습니다. 어쩌면 그것은 당신의 목적입니다 – Mojtaba

+0

완벽. 감사 :) –

관련 문제