Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Не получается передать в функцию значение (https://javascript.ru/forum/events/5741-ne-poluchaetsya-peredat-v-funkciyu-znachenie.html)

javascript_pupil 02.11.2009 08:16

Не получается передать в функцию значение
 
Вот работающий код:
<a href="#" onclick="document.getElementById('block2copy').focus(); document.getElementById('block2copy').select()">Выделить</a>


Но мне нужно вынести этот код в функцию, однако не получается передать параметры:
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin

function FocusSelect(anyname) {
document.anyname.focus();
document.anyname.select();
return false;
}

//  End -->
</script>

<a href="#" onclick="FocusSelect(block2copy)">Выделить</a>


Что я делаю неправильно? Мне нужно вынести весь код во внешний файл и чтобы функция могла работать с любыми именами полей.

Octane 02.11.2009 08:48

http://javascript.ru/accessors

javascript_pupil 02.11.2009 08:57

Прочитал. Непонятно. Можно пример, применительно к вышеизложенному вопросу? Насколько я понимаю, это 1-2 строчки кода.

Kolyaj 02.11.2009 12:14

javascript_pupil,
почему здесь вы используете getElementById
Цитата:

Сообщение от javascript_pupil
onclick="document.getElementById('block2copy').foc us();

А здесь нет
Цитата:

Сообщение от javascript_pupil
document.anyname.focus();

?

javascript_pupil 02.11.2009 12:28

Kolyaj, потому, что с ним тоже не работает.

Kolyaj 02.11.2009 12:32

Тогда еще один наводящий вопрос:
Почему тут кавычки есть
Цитата:

Сообщение от javascript_pupil
onclick="document.getElementById('block2copy').foc us();

А тут нет
Цитата:

Сообщение от javascript_pupil
onclick="FocusSelect(block2copy)"

?

И перед тем, как заглядывать на форум, лучше заглядывать в консоль ошибок. И себе время сэкономите, и остальным.

javascript_pupil 02.11.2009 13:09

мне на примерах учиться гораздо проще. Сообщения консоли лично мне ничего не говорят, т.к. моих познаний в JS недостаточно для их понимания. Ваши наводящие вопросы также ничего мне не объясняют к сожалению.

Помните бородатый анекдот про двух моряков в море? Цитата оттуда:
Цитата:

ты не выделывайся, ты пальцем покажи!

javascript_pupil 02.11.2009 13:13

Всё, блин. Разобрался! Всем спасибо за участие.

javascript_pupil 03.11.2009 07:16

Всё-таки пример работает не так, как надо. Во-первых в IE (8.0) не происходит фокусировки если использовать выделение. Если убираешь select(), то focus() работает, а вместе - никак. А в FireFox (3.5.4) focus() вообще не работает ни с select() ни без него.

Krondor 06.11.2009 15:32

пардон, что вмешиваюсь, но в примере из первого сообщения:
сначала идет обращение к элементу через его ID: document.getElementById(anyname);
а потом через его name: document.anyname;
на сколько я в курсе это разные вещи..
не проще ли сразу сделать все через ID??


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