Это мой код. Он загружает содержимое страниц без обновления.JQuery load() делает функции Jquery срабатывает несколько раз
Проблема заключается в том, когда я нажимаю кнопку, обработанную jQuery, и ajax она срабатывает столько раз, сколько я загружаю страницы.
См., Например, Если загружено 2 страницы, jQuery будет срабатывать дважды
Если я загрузил 4 страницы, jQuery будет загружаться 4 раза.
<script>
$(document).ready(function(){
//set trigger and container
var trigger = $('#nav ul li a'),
container = $('#container');
//do on click
trigger.on('click', function(e){
/***********/
e.preventDefault();
/* reload content without refresh */
//set loading img
$('#container').append('<div id = "loading">WAIT... <img src = "img/ajax-loader-small.gif" alt="Currently loading" /></div>');
//change img location to center
$("#loading").css({"position": "absolute", "left": "50%", "top": "50%"});
//get the trigger to reload the contents
var $this = $(this),
target = $this.data('target');
container.load(target + '.php');
// return false;
$(trigger).die('click');
});
});
Этот скрипт запускает столько раз, сколько я загрузить страницу через нагрузки() функция, которая означает то же сообщение будет вставлено много раз в базу данных
<script>
$(document).ready(function(){
$(document).on("click",".fa-pinterest-square",function(e) {
var form = $(this).find('form'); //Since the form is child to <i>
$.ajax({
url: "includes/widgets/add_pains.php",
type: "POST",
data: form.serialize(),
success: function(data) {
alert(data);
}
});
});
});
</script>
Как я могу это исправить вопрос?
Ваш вопрос не очень ясен. Ваш код, как он есть, не будет запускать * ничего * несколько раз. Это так же просто, как и на самом деле. Вы оставляете код? Если да, отправьте его здесь. – Marcus
Спасибо, но я почти удалил все с сайта, но он не решил его, что означает проблему во втором скрипте. – jack