2017-09-02 9 views
-6

IDと2つのクラスを持つ要素があるとします(クラスAとクラスBとしましょう)。あなたはIDを知っていて、クラスAを共有する他のすべての要素を取得したいが、クラスBは共有したくない。これらの要素のすべてに2つのクラス名があるわけではなく、クラスAを持つクラスもある。Javascriptを使用すると、元の要素のIDを使って呼び出すときに適切なクラス名を取得するので、クラスBではなくクラスAの要素が得られますか?要素のIDを使用して2つのクラスの1つを取得しますか? JS

+0

あなたがこれを通過することができます - https://www.w3schools.com/jsreF/met_document_getelementsbyclassname.asp –

答えて

1
var element = document.getElementById('test'); 

/* to get all classes of the element */ 
var classList = element.className.split(' '); 

/* 
* Say class A is in classList[0] and class B in classList[1], 
* select all elements which have class classList[0] but not class classList[1] */ 
var classToShow = document.querySelectorAll('.'+classList[0]+':not(.'+classList[1]+')'); 

/* loop through the selected list to log each element in console */ 
for(var i = 0; i < classToShow.length; i++) { 
     console.log(classToShow[i]); 
} 

は、この情報がお役に立てば幸いです。 :)

それとも単純に物事を保つために:

document.querySelectorAll('.A:not(.B)'); 
関連する問題