Вход

Просмотр полной версии : Вопрос про оптимизацию


lolka84
14.02.2011, 10:47
Привет, помогите:
есть около десятка input'ов, в каждом из них по-умолчанию записано value (№ счета, дата, имя и т.п.). При фокусе и потере фокуса сбрасываю значение на "", но т.к. количество инпутов, как уже сказал, около десятка, как то скрипт оптимизировать можно, что б на каждый input не прописывать onfocus и onblur ?

walik
14.02.2011, 11:18
Если на jquery то можно так:

$('#id').focus(function() {
//что нужно сделать
});

$('#id').blur(function() {
//что нужно сделать
});

Всем input'ам даешь один и тот же ID.

lolka84
14.02.2011, 11:28
Да, забыл добавить: один ID всем объектам раздать не вариант - кроме сабжа будут еще и другие скрипты, которым одинаковый ID ну никак не нужен :)

kadabrik
14.02.2011, 11:29
Всем input'ам даешь один и тот же ID.
Вах, вах никогда так не делай. ID должен быть всегда один. Нужно пользоваться классами.

walik
14.02.2011, 11:41
Вах, вах никогда так не делай. ID должен быть всегда один. Нужно пользоваться классами.

Да, ошибся немножко:) :) Класс один надо давать

Вот как будет выглядеть с классами:

$('.class').focus(function() {
//что нужно сделать
});

$('.class').blur(function() {
//что нужно сделать
});

ksa
14.02.2011, 11:45
Всем input'ам даешь один и тот же ID.
Ни че се совет... :D

lolka84
14.02.2011, 11:48
Классы вариант, спасибо)

Иваннн
14.02.2011, 12:14
Я не знаю JQuery, но раз это javascript не обойдется без назначений данных обработчиков, может лучше поставить обработчики на form и ловить поднимающиеся пузырики(или захватывать идущее к цели событие), определяя элемент srcElement(target) и делать необходимое изменение value?

dmitriymar
14.02.2011, 19:00
http://javascript.ru/tutorial/events/properties#elementy-svyazannye-s-sobytiem