Mam taki o to problem:
Wywołuję przez kliknięcie button metodę ajax, która pobiera sample.html. W tym html`u jest button, który z nowu wywołuje tę samą akcję czyli za pomocą ajax`a pobiera sample.html. W metodzie 'beforeSend' czyszczę to co wcześniej ładowałem.
W metodzie 'success' mam alert('asd'); i za 1 razem gdy wywołam pojawia się 1x dialog. Gdy tak po klikam w kolejne button to wzrasta ilość tych dialogów razy 2 a chciałbym żeby tylko raz się pojawiał jak za pierwszym razem.
<form method="post" action="" class="ajax-form-contact jtransform"> <script> $(function() { $('form.jtransform').jqTransform(); $('form.ajax-form-contact').live('submit', function() { var json = $(this).serializeArray(); $.ajax({ url: '<?=$this->url(array(), 'admin_ajax_company_add_contact'); ?>', data: json, async: true, cache: false, type: 'POST', global: false, beforeSend: function(xhr) { $('div.ajax-content').html(''); xhr.overrideMimeType("text/plain; charset=x-user-defined"); }, success: function(msg) { var success = '<?=($this->success === true) ? 'true' : 'false'; ?>'; alert(success); $('div.ajax-content').html(''); $('div.ajax-content').html(msg); } }); return false; }); }) </script> <h3><?=$this->translate('Add new contact'); ?></h3> <div class="table"> <div class="row"> <div class="col"><label><?=$this->translate('Name'); ?>:</label></div> <div class="col"><label><?=$this->translate('Surname'); ?>:</label></div> </div> <div class="row"> <div class="col"><?=$this->form->getElement('Name'); ?></div> <div class="col"><?=$this->form->getElement('Surname'); ?></div> </div> </div> <button class="button gray"><?=$this->translate('Add contact'); ?></button> </form>
Nie wiem nawet jak szukać w internecie więc proszę o jakiekolwiek materiały.
Z góry dzięki

Rozwiązałem problem.
Problem polegał z funkcją "live('submit', function() {...})". Powinno być bez live i tylko submit.