Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.10.2010, 17:24
Аспирант
Отправить личное сообщение для UnderShot Посмотреть профиль Найти все сообщения от UnderShot
 
Регистрация: 30.12.2009
Сообщений: 44

Поменять event`ы местами
Есть форма (form#abc), к ней уже пришит onsubmit, я хочу к форме добавить еще один onsubmit, но чтобы функция выполнялась раньше первоначального event`а:
<form id="abc"> … </form>

<script>
var form=document.getElementById("abc");

form.onsubmit=function(){
	alert("First event")
	return false
}

function secondEvent(){
	alert("I`m a second event")
	return false
}

/* и как-нибудь */

form.onsubmit[0]=secondEvent; // =D
</script>
Вообщем, как поменять местами эвенты?
Ответить с цитированием
  #2 (permalink)  
Старый 07.10.2010, 17:38
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

С помощью .onsubmit можно повесить только одну функцию. Пусть это будет функция, запускающая нужные функции
form.onsubmit=function(){ 
  firstEvent();
  secondEvent();
} 

function firstEvent(){ alert("First event"); }
function secondEvent(){ alert("I`m a second event"); }
Ответить с цитированием
  #3 (permalink)  
Старый 07.10.2010, 17:39
Аспирант
Отправить личное сообщение для UnderShot Посмотреть профиль Найти все сообщения от UnderShot
 
Регистрация: 30.12.2009
Сообщений: 44

Делал даже так:
var form=document.getElementById("abc");

form.onsubmit=function(){
	alert("First event")
	return false
}

var submitten=form.onsubmit;

form.onsubmit=function(){
	submitten()
	alert("First event")
	return false
}
Но не сработало.
Ответить с цитированием
  #4 (permalink)  
Старый 07.10.2010, 17:49
Аспирант
Отправить личное сообщение для UnderShot Посмотреть профиль Найти все сообщения от UnderShot
 
Регистрация: 30.12.2009
Сообщений: 44

Sweet, имя первой onsubmit-функции я не могу определить.
Ответить с цитированием
  #5 (permalink)  
Старый 07.10.2010, 17:53
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Ну тогда добавь вторую функцию методом attachEvent/addEventListener. Правда не знаю, какая функция сработает первой
Ответить с цитированием
  #6 (permalink)  
Старый 07.10.2010, 17:54
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Читай про события
__________________
.
Ответить с цитированием
  #7 (permalink)  
Старый 07.10.2010, 19:30
Аспирант
Отправить личное сообщение для UnderShot Посмотреть профиль Найти все сообщения от UnderShot
 
Регистрация: 30.12.2009
Сообщений: 44

Skipp, что я там должен прочесть?
Ответить с цитированием
  #8 (permalink)  
Старый 08.10.2010, 08:17
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от UnderShot
что я там должен прочесть?
Как с событиями работать в JS, а не свои выдумки пытаться реализовать.
Ответить с цитированием
  #9 (permalink)  
Старый 08.10.2010, 21:21
Аспирант
Отправить личное сообщение для UnderShot Посмотреть профиль Найти все сообщения от UnderShot
 
Регистрация: 30.12.2009
Сообщений: 44

Вот, написал, использовал замыкания:
(function(i){
		var old=b[i].form.onsubmit;
		b[i].form.onsubmit=function(){
		for(var o=0,t=this;o<t.length;o++){
			t[o].value=""
		};
		old()
	}
})(i);
Чувств ю, пахнет быдлокодингом…
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Jquery - поменять местами блоки denlem jQuery 4 09.12.2010 16:00
Как поменять стиль последнему элементу списка UL ARLEVNAR Элементы интерфейса 6 15.07.2010 09:58
Поменять слова местами iceman Общие вопросы Javascript 1 23.06.2009 16:14
Как поменять местами элементы в дереве элемента родителя? rar11 Events/DOM/Window 8 01.04.2009 18:53
Как поменять SRC у Img в Pocket IE Maxidrom Events/DOM/Window 2 08.10.2008 15:05