Как заставить работать ссылку после загруки ajax
имею следующий код
после загрузки ajax на странице в боксе изменяется текст в котором есть ссылка после загрузки ссылка не работает если страницу обновить работает. как заставить ее работать в любом случае? ссылка имеет ввид Код:
<a onclick="$('#delproduct').submit();" id="del_to_cart"><img src="remove_btn.gif" /></a> $(document).ready(function () { $('#add_to_cart').replaceWith('<a onclick="" id="add_to_cart">' + $('#add_to_cart').html() + '</a>'); $('#add_to_cart').click(function () { $.ajax({ type: 'post', url: 'index.php?route=module/cart/callback', dataType: 'html', data: $('#product :input'), success: function (html) { $('#module_cart .rightcar').html(html); }, complete: function () { var image = $('#image').offset(); var cart = $('#module_cart').offset(); $('#image').before('<img src="' + $('#image').attr('src') + '" id="temp" style="position: absolute; top: ' + image.top + 'px; left: ' + image.left + 'px;" />'); params = { top : cart.top + 'px', left : cart.left + 'px', opacity : 0.0, width : $('#module_cart').width(), heigth : $('#module_cart').height() }; $('#temp').animate(params, 'slow', false, function () { $('#temp').remove(); }); } }); }); }); |
Пожалуйста, отформатируйте свой код!
Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Есть статья на эту тему.
http://www.linkexchanger.su/2008/73.html |
Спасибо!
прочитал, но увы ничего пока не получается. Даже не знаю что рыть. наверное не очень корректно изложил проблему. Постараюсь более подробно. страница с товаром нажимаю на кнопку купить товар летит в карзину, карзина на этой же странице в правом боксе, в ней появляется товар. возле наименования товара кнопка удалить. Вот она то и не работает. если добавить товар в корзину и обновить страницу тогда товар удаляется, если удалять сразу после добавления удаляется но с этой страницы переходит на страницу корзины. А мне нужно что бы удалялся и оставаться на этой же странице. Да Ваша статья вроди-бы и рассматривает эту же проблему однако у меня ничего не получается. подскажите правильно ли я понимаю вот в этой секции: success: function (html) { $('#module_cart .rightcar').html(html); } я получаю код который должен быть вставлен в страницу после нажатия кнопки добавить товар. $('#module_cart .rightcar').html(html); после чего мне нужно установить обработчик submit() но когда я нажимаю кнопку удалить товар же удаляется и переходит на другую страницу. значит submit() работает но кнопка имеет такой код: <a onclick="$('#del_to_cart').submit();" id="del_to_cart"> при нажатии скрипт должен перейти сюда: $('#del_to_cart1').replaceWith('<a onclick="" id="del_to_cart1">' + $('#del_to_cart1').html() + '</a>'); $('#del_to_cart1').click(function () { $.ajax({ type: 'post', url: 'index.php?route=module/cart/delcallback', dataType: 'html', data: $('#delproduct1 :input'), success: function (html) { $('#module_cart .rightcar').html(html); } }); }); }); |
Попробуйте обработчик ссылки на удаление поместить в блок success: функции добавления. Т.е. примерно так:
success: function (html) { $('#module_cart .rightcar').html(html); $('#del_to_cart1').click(function () { $.ajax({ type: 'post', url: 'index.php?route=module/cart/delcallback', dataType: 'html', data: $('#delproduct1 :input'), success: function (html) { $('#module_cart .rightcar').html(html); } }); }); }, То есть скорее всего, ссылка загруженная через ajax не инициализирована. В функции success ее можно оживить. Это так, на вскидку. |
да при нажатии кнопки удалить вижу товар удаляется, но опять переходит на другую страницу. видемо при втором запросе ajax я просто успеваю увидеть это.
|
пробую в загружаемую ссылку изменить
<a onclick="javascript:alert(\'ok\')" id="del_to_cart"> alert работает. |
Часовой пояс GMT +3, время: 22:09. |