поиск HTMLElement'а в массиве
<input type="hidden" id="a1" value="123"> <input type="hidden" id="a2" value="123"> <input type="hidden" id="a3" value="123"> <input type="hidden" id="a4" value="123"> <input type="hidden" id="a5" value="123">
function getById(id){return document.getElementById(id);}
var a=[getById('a1'),getById('a2'),getById('a3'),getById('a4'),getById('a5')];
как проверить есть ли в массиве инпут с айди а3? :help: |
или indexOf
или циклом по .id |
как это выглядеть должно?
a.indexOf(getById('a3'))
выдаёт -1 |
\вариант с циклом
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function checkEl() {
with(document) var x = [getElementById("a1"), getElementById("a2"), getElementById("a3"), getElementById("a4"), getElementById("a5")];
for(var i = 0; i < x.length; i++) {
if(x[i].id == "a4") { // тут
alert("true");
break;
}
}
}
</script>
</head>
<body onload="checkEl()">
<input type="hidden" id="a1" value="123">
<input type="hidden" id="a2" value="123">
<input type="hidden" id="a3" value="123">
<input type="hidden" id="a4" value="123">
<input type="hidden" id="a5" value="123">
</body>
</html>
|
спасибо но цикл мне не подходит, у меня элементов много очень
|
чет не понял, а так не катит:
if ( getById('a3') ) {
// элемент есть
} else {
// элемента нету
}
или
if ( a[ 2 ] ) {
// элемент есть
} else {
// элемента нету
}
|
нет, потому что есть массив с элементами и есть элементы в ХТМЛ коде
над взять из ХТМЛ и проверить есть ли он в массиве |
ну значит абсолютное равенство === циклом
|
Цитата:
|
Вы наверняка делаете что-то через задний проход.
Но если очень хочется:
<input type="hidden" id="a1" value="123">
<input type="hidden" id="a2" value="123">
<input type="hidden" id="a3" value="123">
<input type="hidden" id="a4" value="123">
<input type="hidden" id="a5" value="123">
<script>function getById(id){return document.getElementById(id);}
var a=[getById('a1'),getById('a2'),getById('a3'),getById('a4'),getById('a5')];
alert(a.indexOf(getById('a3')))
</script>
|
Цитата:
|
Ну да, только для новых браузеров.)
|
чё есть ещё люди которые IE юзают? о_О
|
Цитата:
|
вконтакт не поддерживает ие
|
Цитата:
|
| Часовой пояс GMT +3, время: 05:57. |