我有三个id标记
<div id="view_1"></div>
<div id="view_2"></div>
<div id="view_3"></div>
我使用getElementsByClassName方式可以工作
但&#34; class&#34;我用它来划分css风格
如何使用document.getElementById查找 - &gt; &#34; view_1&#34; &#34; view_2&#34; &#34; view_3&#34;
function hideDIV(){
var divs = document.getElementById('view'.*);
for(var i=0; i<divs.length; i++) {
divs[i].style.display='none';
}
}
答案 0 :(得分:4)
你可以这样做:
var divs = document.getElementsByTagName("div");
for(var i = 0; i < divs.length; i++) {
if(divs[i].id.indexOf('view_') == 0) {
divs[i].style.display='none';
}
}
答案 1 :(得分:1)
使用QuerySelectorAll:
document.querySelectorAll('[id^="view_"]').id;
这将获得以view_
答案 2 :(得分:0)
尝试这样做:Fiddle
JS:
$('[id*="view"]').hide();
HTML:
<div id="view_1"> dcf</div>
<div id="view_2"> DSg</div>
<div id="view_3"> gsde</div>
答案 3 :(得分:0)
不,它不起作用。
document.getElementById()方法只接受一个参数。
但是,您可以始终为元素设置类,然后使用getElementsByClassName()
。现代浏览器的另一个选择是使用querySelectorAll()
方法:
使用$("div[id*='view']")
答案 4 :(得分:0)
document.querySelectorAll('div[id^="view_"]');
$('div[id^="view_"]');
div[id^="view_"] { ... }
但是考虑使用类而不是ID来语义定位元素。
例如:搜索具有targetDiv
类的所有DIV,并将hidden
类添加到它们中。然后在CSS中将hidden
类定义为display: none
。