Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   чем заменить onChange? (https://javascript.ru/forum/dom-window/17415-chem-zamenit-onchange.html)

Viral 18.05.2011 15:27

чем заменить onChange?
 
Снова здравствуйте!

Вопрос такой:
Есть приемлимая замена события onChange, но такая, чтобы функция срабатывала не при потере элементом фокуса, а сразу при любом изменении содержимого этого элемента?

walik 18.05.2011 15:33

onkeydown, onkeyup

Matre 18.05.2011 15:34

onkeydown
onkeyup
onkeypress

poorking 18.05.2011 18:28

Только цифры
<textarea id = "#txt"></textarea>

<script type = "text/javascript">
      var events = ["keydown", "keyup", "cut", "paste", "input", "change"];
	
	function digits(){
		this.value = this.value.replace(/[^\d]+/g, "");
	}
	
	var t = document.getElementById("#txt");
	for(var i = 0; i < events.length; i ++){
		t.addEventListener(events[i], digits, false);
	}
</script>

CyMKuH 18.07.2011 15:33

А можно подробнее про первый параметр this.value.replace?
Ну или где почитать?

SkyLight 18.07.2011 15:35

В любой документации. Это синтаксис регулярного выражения.

CyMKuH 18.07.2011 23:47

Впринципе разобрался тока не понял флаг "g" в конце выражения. что он значит?

trikadin 19.07.2011 00:16

Почитайте тут.

CyMKuH 31.07.2011 00:52

Блин, у меня в Opere скрипт работает. а в IE 8 не тянет. в чё проблема

Маэстро 03.12.2011 16:15

Цитата:

Сообщение от CyMKuH (Сообщение 116413)
Блин, у меня в Opere скрипт работает. а в IE 8 не тянет. в чё проблема

потому что в IE не addEventListener, а attachEvent

Pavel M. 03.12.2011 18:09

Цитата:

Сообщение от CyMKuH
Блин, у меня в Opere скрипт работает. а в IE 8 не тянет. в чё проблема

пользуйтесь лучше библиотеками, не зря их пишут
jquery, например
будет надежно

trikadin 04.12.2011 01:03

Pavel M., вам jquery платит, штоле? Уже тема пятая, наверное, где вы это написали.

Я не имею ничего против jq, но знать, как это работает изнутри - нужно.

Pavel M. 04.12.2011 11:28

Цитата:

Сообщение от trikadin
вам jquery платит, штоле? Уже тема пятая, наверное, где вы это написали.

Я не имею ничего против jq, но знать, как это работает изнутри - нужно.

дело не в jq
ссылаюсь на нее так как это, видимо, самая популярная js библиотека

устал просто видеть как в который раз не кроссбраузерно создают обработчики, пытаются получить размеры объекта и т.д.

бывает, в теме пишут: библиотеками не пользоваться - тогда все понятно, но чаще людям нужен результат

trikadin 04.12.2011 11:32

Pavel M., согласен) Хотя в своё время я тоже писал обработчики событий и т.д.


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