Как прервать отправку формы для вызова некоторого JavaScript? - PullRequest
1 голос
/ 08 сентября 2010

Я использую форму, предоставленную мне PayPal, чтобы продать что-то на моем сайте.Прежде чем пользователь нажмет кнопку «оформить заказ» с помощью кнопки формы PayPal, я хочу отследить событие в Google Analytics.Я нашел эту статью через Google Analytics http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html, в которой объясняется, как отслеживать пользовательское событие, но я не знаю, как добавить его до отправки формы, чтобы отправка формы также не прерывалась.

я представляю, что это какой-то базовый javascript?

спасибо!

Ответы [ 2 ]

4 голосов
/ 08 сентября 2010

Вы можете прикрепить к событию click кнопки или к событию submit формы. Последнее лучше, потому что отправка может произойти при нажатии клавиши ENTER в текстовом поле. В этом случае нажатие кнопки не обнаружит такую ​​отправку.

Итак, нажатие кнопки:

$("buttonID").click(function(){...});

или отправьте форму:

$("formID").submit(function(){...});

В вашей функции вы должны делать то, что требуется аналитике, и отправка будет автоматически продолжаться впоследствии (до тех пор, пока не будет ошибок, которые могли бы остановить выполнение JavaScript).

0 голосов
/ 08 сентября 2010

Вы можете добавить это к тегу формы

<form onsubmit="return do_something()" >

Затем напишите функцию do_something и сделайте так, чтобы она всегда возвращала значение ИСТИНА (поскольку все остальное не даст форме отправиться) Вы также можете привязать событие отправки к вашей форме из JavaScript, используя:

element.submit = do_something (note the fact that we're using a callback here
                               not the function itself)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...