Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JS: Можно ли определить источник для атрибутов on*? / 12 сообщений из 12, страница 1 из 1
27.03.2020, 10:17
    #39941572
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Есть форма, у которой задан onsubmit="return proc1()".
Можно ли в proc1 определить форму, из которой процедура была вызвана?
...
Рейтинг: 0 / 0
27.03.2020, 10:37
    #39941580
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.
Можно ли в proc1 определить форму, из которой процедура была вызвана?

Если только так...
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<!--
<script src='https://code.jquery.com/jquery-latest.js'></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
function test(e) {
	alert(e.id)
};
</script>
</head>
<body>
<form onsubmit='return test(this)' id='myFrm'>
	<button>Test</button>
</form>
</body>
</html>
...
Рейтинг: 0 / 0
27.03.2020, 10:38
    #39941581
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.
Есть форма, у которой задан onsubmit="return proc1()".

Это довольно плохой вариант подключения событий... Он имеет мало возможностей.
...
Рейтинг: 0 / 0
27.03.2020, 10:48
    #39941585
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
То есть либо вручную передавать ссылку в параметрах (this или event), либо задавать обработчик через addEventListener (и тогда event будет передаваться автоматически)?
Я думал, что может быть по стеку вызова можно получить источник.
...
Рейтинг: 0 / 0
27.03.2020, 12:46
    #39941626
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.
Я думал, что может быть по стеку вызова можно получить источник.

Это событие... И обработчик задан весьма не эффективно. У него нет стека.
...
Рейтинг: 0 / 0
27.03.2020, 12:51
    #39941631
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.
То есть либо вручную передавать ссылку в параметрах (this или event), либо задавать обработчик через addEventListener (и тогда event будет передаваться автоматически)?

Вот более подробное описание как объект "событие" может "попасть внутрь" обработчика события...
...
Рейтинг: 0 / 0
27.03.2020, 17:15
    #39941733
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
krvsa
Вот более подробное описание как объект "событие" может "попасть внутрь" обработчика события...

Переформулирую — получается, что на уровне html-разметки единственный способ в процедуре узнать, откуда она вызвана, это передавать this в аргументах.
...
Рейтинг: 0 / 0
28.03.2020, 13:00
    #39941859
voraa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.,
Можно еще через event.currentTarget.

<form onsubmit='return test(event.currentTarget)' id='myFrm'>
...
Рейтинг: 0 / 0
28.03.2020, 15:47
    #39941880
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Это понятно. Это и есть «вручную передавать ссылку в параметрах».
...
Рейтинг: 0 / 0
28.03.2020, 19:36
    #39941911
voraa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.,
Так любые параметры передаются в функцию "вручную"
...
Рейтинг: 0 / 0
30.03.2020, 08:17
    #39942136
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.
получается, что на уровне html-разметки единственный способ в процедуре узнать, откуда она вызвана, это передавать this в аргументах.

Любые аргументы, которые помогут понять нужное. Можно ведь и ИД элемента передать...
Или просто 1, 2 или 3... Главное чтобы функция потом правильно все интерпретировала.
...
Рейтинг: 0 / 0
30.03.2020, 17:48
    #39942317
artas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JS: Можно ли определить источник для атрибутов on*?
Alibek B.,

Код: html
1.
2.
3.
4.
5.
6.
7.
function test() {
 console.log(arguments.callee.caller.arguments[0].target.id );
return false;
};
<form onsubmit='return test()' id='myFrm'>
	<button>Test</button>
</form>
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JS: Можно ли определить источник для атрибутов on*? / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]