Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   вызов пользовательской функции в onClick (https://javascript.ru/forum/events/11772-vyzov-polzovatelskojj-funkcii-v-onclick.html)

[MI_nor] 12.09.2010 19:44

вызов пользовательской функции в onClick
 
Собственно написал такую функцию:
<script  type="text/javascript">
	var id= new Array(<?=$mar[0]?>,<?=$mar[1]?>,<?=$mar[2]?>);
	function hide_id(tekid){
		for(var i = 0; i < 3; i++){
			if (tekid==id[i]) document.getElementById('id[i]' ).style.display='block';
				else document.getElementById('id[i]' ).style.display='none';
		}
	}
</script>


Затем пытаюсь её использовать:
<a class="none" href="#" onclick="hide(post-1084)">
   <span class="pos2 small">Концерт Александра Малинина в Курске</span>
</a>
<br>
<a class="none" href="/1084/">
  <span id="post-1084" style="display: none;">4 октября в Курском государственном драматическом театре им. А.С. Пушкина состоится концерт Александра Малинина.<br>
   </span>
</a>

<a class="none" href="#" onclick="hide(post-1081)">
   <span class="pos2 small">Концерт Земфиры  в Москве</span>
</a><br>
<a class="none" href="/1081/">
   <span id="post-1081" style="display: none;">17 сентября в концертном зале "Crocus City Hall" состоится первый за 2 года концерт Земфиры в Москве. Начало 21.00<br>
   </span>
</a>

<a class="none" href="#" onclick="hide(post-1080)">
   <span class="pos2 small">Парад Баритонов, памяти Муслима Магомаева</span>
</a>
<a class="none" href="/1080/">
   <span id="post-1080" style="display: none;">17 сентября в концертном зале "Crocus City Hall" состоится первый за 2 года концерт Земфиры в Москве. Начало 21.00<br>
   </span>
</a>

Но к сожалению при клике на заголовок ничего не происходит. Где я налажал? Фаербаг почему-то даже не заходит в функцию в мою

exec 12.09.2010 19:52

hide('post-1084')


Кавычки.

[MI_nor] 12.09.2010 20:33

Действительно, виноват. Тогда еще один вопрос. Правильна ли эта запись?
if (tekid==id[i]) document.getElementById('id[i]' ).style.display='block';
               else document.getElementById('id[i]' ).style.display='none';

Заход в функцию осуществляется, сравниваются правильные числа, но эффекта по прежнему ноль.
Вернее вылазит ошибка "document.getElementById("id[i]") is null"
З.Ы все, я понял свой тупизм =) всем спасибо

рони 14.09.2010 02:20

[MI_nor],
document.getElementById('id[i]' ) кавычки здесь ненужны


Часовой пояс GMT +3, время: 17:06.