Обработчик и получение значения из внешнего js скрипта ?
Подскажите новичку.
На сайте подключен и вызывается некий внешний JS Одно из его возможных действий этот pop-up окошки с формами с опросом пользователя. Можно как забрать себе копию данных вводимых пользователями в этих формах ? В частности в примере вижу в инспекторе следующий код формы запроса e-mail:
<form action="lh-banner" method="" class="widget--form">
<p class="widget--error_text">Введите корректный e-mail</p>
<input name="email" class="widget--input" placeholder="e-mail" type="text">
<div class="agreement">
<input id="agreement-val" name="agreement" checked="" type="checkbox">
<label for="agreement-val" id="agreement_text"> Я даю своё согласие на обработку персональных данных и принимаю условия </label>
<a target="_blank" href="https://site.ru/publichnaya-oferta">Пользовательского соглашения.</a>
</div>
<input class="widget--submit" value="Получить бонус" type="submit">
</form>
Могу я в своем html/php/js как то повесить обработчик события на эту форму создаваемую внешним скриптом, чтобы по нажатию в ней submit, получать себе значение из поля формы "email" ? |
anstrem,
Сработает более поздний обработчик
<form action="lh-banner" method="" class="widget--form">
<p class="widget--error_text">Введите корректный e-mail</p>
<input name="email" class="widget--input" placeholder="e-mail" type="text">
<div class="agreement">
<input id="agreement-val" name="agreement" checked="" type="checkbox">
<label for="agreement-val" id="agreement_text"> Я даю своё согласие на обработку персональных данных и принимаю условия </label>
<a target="_blank" href="https://site.ru/publichnaya-oferta">Пользовательского соглашения.</a>
</div>
<input class="widget--submit" value="Получить бонус" type="submit">
</form>
<script>
// внешний скрипт
document.querySelector('.widget--form').onsubmit = function(e) {
e.preventDefault();
alert('внешний скрипт');
}
</script>
<script>
// ваш скрипт
document.querySelector('.widget--form').onsubmit = function(e) {
e.preventDefault();
alert(document.querySelector('.widget--input').value);
}
</script>
|
Т.е. если где то во внешнем скрипте есть обработка onclick и я ниже на тот же onclick повешу свой обработчик, то сработает только мой, а функционал внешнего скрипта будет нарушен ?
А нельзя как то чтобы они вместе сработали и мой и их ? Или просто выяснить какое из событий они используют (если используют вообще) submit или onclick и повеситься на свободное ? |
И внешний, и ваш.
<form action="lh-banner" method="" class="widget--form">
<p class="widget--error_text">Введите корректный e-mail</p>
<input name="email" class="widget--input" placeholder="e-mail" type="text">
<div class="agreement">
<input id="agreement-val" name="agreement" checked="" type="checkbox">
<label for="agreement-val" id="agreement_text"> Я даю своё согласие на обработку персональных данных и принимаю условия </label>
<a target="_blank" href="https://site.ru/publichnaya-oferta">Пользовательского соглашения.</a>
</div>
<input class="widget--submit" value="Получить бонус" type="submit">
</form>
<script>
// внешний скрипт
document.querySelector('.widget--form').onsubmit = function(e) {
e.preventDefault();
alert('внешний скрипт');
}
</script>
<script>
// ваш скрипт
document.querySelector('.widget--form').addEventListener('submit', function(e) {
e.preventDefault();
alert(document.querySelector('.widget--input').value);
});
</script>
|
| Часовой пояс GMT +3, время: 12:47. |