Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.05.2017, 15:37
Новичок на форуме
Отправить личное сообщение для Yury.Ko Посмотреть профиль Найти все сообщения от Yury.Ko
 
Регистрация: 26.05.2017
Сообщений: 2

Как правильно отправить event в функцию?
Есть код js

easypay.core.create(event, success, error)


на странице html есть форма и ее изменять нежелательно, из этой формы я достаю данные по id, после создаю event и после вызываю event и передаю в функцию

var form = document.createElement('form');

    var product1 = document.createElement("input");
    product1.value = document.getElementById('zip');
    product1.name = "zip";

    form.appendChild(product1);

    var event = new Event('click', {cancelable: true});
    form.addEventListener('click', handler);

    easypay.core.create(form.dispatchEvent(event), success, error);


вот ошибка

Uncaught TypeError: a.preventDefault is not a function


что делаю не так? в js не силен, заранее спасибо за помощь
вот либа easypay-sdk.s3.amazonaws.com/easypay-current.js

Последний раз редактировалось Yury.Ko, 26.05.2017 в 15:41.
Ответить с цитированием
  #2 (permalink)  
Старый 26.05.2017, 16:41
Кандидат Javascript-наук
Отправить личное сообщение для Diphenyl Oxalate Посмотреть профиль Найти все сообщения от Diphenyl Oxalate
 
Регистрация: 21.01.2017
Сообщений: 139

Нужен код функции handler
Ответить с цитированием
  #3 (permalink)  
Старый 26.05.2017, 16:51
Новичок на форуме
Отправить личное сообщение для Yury.Ko Посмотреть профиль Найти все сообщения от Yury.Ko
 
Регистрация: 26.05.2017
Сообщений: 2

Diphenyl Oxalate,
суть в том что в функции easypay.core.create() событие отменяется методом preventDefault, по этому в hendler нет никакой обработки. Быть может я не так понимаю принцип работы preventDefault(javascript-ом не занимался никогда)... для меня пока загадка что это за объект 'event'. Вот код из документации
<form name="credit-card-data" method="post" id="card-form">
    <label for="zip">Zip</label>
    <input name="zip" />
    <label for="state">State</label>
    <input name="state" />
    <label for="city">City</label>
    <input name="city" />
    <label for="address">Address</label>
    <input name="address" />
    <label for="cardholder_name">Cardholder Name</label>
    <input name="cardholder_name" />
    <label for="expiration_date">Expiration Date</label>
    <input name="expiration_date" />
    <label for="card_number">Card Number</label>
    <input name="card_number" />
    <input type="submit" onclick="easypay.core.create(event, success, error)" />
</form>

Последний раз редактировалось Yury.Ko, 26.05.2017 в 16:54.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как запустить функцию из параметров функции? Untropee Общие вопросы Javascript 4 14.12.2016 15:03
как правильно вызвать функцию только по success? imedia Элементы интерфейса 9 22.09.2014 08:43
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как правильно вызвать функцию Mateus jQuery 1 16.12.2012 15:43
Как правильно очистить maxlength в input? Маэстро Events/DOM/Window 10 22.06.2011 18:14