downa1234
downa1234

Reputation: 133

how to get all the div in javascript?

<div class="web_index">
<div style="display:block" >content 1</div>
<div style="display:none">content 2</div>
<div style="display:none">content 3</div>
</div>

i used

 var div =document.getElementsByClass("web_index").getElementsByTagName("div");

it tips me there TypeError: document.getElementsByClass is not a function.why, and how to get all the div in the web_index div?

Upvotes: 0

Views: 384

Answers (5)

sgpalit
sgpalit

Reputation: 2686

As it says there is not such a function "getElementsByClass". What you can do is get all "div" and loop through it comparing elements className with "web_index".

Upvotes: 1

mildog8
mildog8

Reputation: 2154

its

var div = document.getElementsByClassName('web_index').getElementsByTagName("div");

or you could use javascript querySelector() function

var div = document.querySelector('.web_index').getElementsByTagName("div");

Upvotes: 0

Mihai Iorga
Mihai Iorga

Reputation: 39704

Maybe

var div =document.getElementsByClassName("web_index")[0].getElementsByTagName("div");

getElementsByClassName does not exist in some Internet Explorer versions and maybe you need to create that function:

document.getElementsByClassName = function(cl) {
  var retnode = [];
  var elem = this.getElementsByTagName('*');
  for (var i = 0; i < elem.length; i++) {
    if((' ' + elem[i].className + ' ').indexOf(' ' + cl + ' ') > -1) retnode.push(elem[i]);
  }
  return retnode;
}; 

Upvotes: 0

xdazz
xdazz

Reputation: 160863

It's document.getElementsByClassName not document.getElementsByClass.

Upvotes: 2

NimChimpsky
NimChimpsky

Reputation: 47290

by classname

document.getElementsByClassName

Upvotes: 0

Related Questions