Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Передать в скрипт идентификатор объекта


Автор: RS_Bob 12.12.2007, 19:45
Доброго всем времени суток.
Есть простенький скрипт: проверяется в инпуте текст, заменяется своим и выделяется.
Вопрос: как передать в скрипт ID объекта, чтоб каждый input не описывать?
Код

function prov() {   
. . .
   document.getElementById('input1').value="My_text";
   document.getElementById('input1').select(); }

Автор: SamDark 12.12.2007, 20:05
RS_Bob, 
Код

function prov(id) {   
var el = document.getElementById(id);
. . .
   el.value="My_text";
   el.select(); }

Автор: RS_Bob 12.12.2007, 20:31
Спасиба  smile 
Как я не додумался...

Автор: egao 12.12.2007, 20:51
лучше всёже не id передавать, а ссылку на элемент. 

prov( $( 'input1id' ) );

а если ещё и поддержку коллекций сделаешь - совсем шоколадно будет.

prov( jpath(' //input:required ') );

Автор: RS_Bob 13.12.2007, 18:18
egao, не объясните в двух словах преимущества Вашего способа?

Автор: egao 13.12.2007, 20:36
1. нет необходимости прописывать идентификаторы всему и вся
2. если у нас уже есть ссылка на элемент, то эффективнее передать её, а не идентификатор, ибо во втором случае функции придётся искать элемент по идентификатору
3. мы не ограничиваемся одним html. иногда бывает удобно передать яваскрипт-объект, реализующий необходимый интерфейс.

впрочем, в случае предачи функции строки в некоторых случаях можно и "искать по идентификатору"...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)