2013-08-28 4 views
0

У меня есть страница с div в ней с id centeredmenu. Когда первая страница загружается, у нее есть меню внутри div с 10 параметрами. каждый из этих опций имеет именованный идентификатор, такой как menu2, menu3 и т. д., с пустой ссылкой href. На щёток нагрузки я могу изменить в любое меню, как только это закончено, я не могу выбрать любое другое меню и изменить содержание DIV снова с новым менюjquery ajax change div content

мой сценарий для этого

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#menu2").click(function(){ 
     $('#centeredmenu').load('menu2.php'); 
     }); 
     $("#menu3").click(function(){ 
     $('#centeredmenu').load('menu3.php'); 
     }); 
     $("#menu4").click(function(){ 
     $('#centeredmenu').load('menu4.php'); 
     }); 
     $("#menu5").click(function(){ 
     $('#centeredmenu').load('menu5.php'); 
     }); 
     $("#menu6").click(function(){ 
     $('#centeredmenu').load('menu6.php'); 
     }); 
     $("#menu7").click(function(){ 
     $('#centeredmenu').load('menu7.php'); 
     }); 
     $("#menu8").click(function(){ 
     $('#centeredmenu').load('menu8.php'); 
     }); 
     $("#menu9").click(function(){ 
     $('#centeredmenu').load('menu9.php'); 
     }); 
     $("#menu10").click(function(){ 
     $('#centeredmenu').load('menu10.php'); 
     }); 
     $("#menu11").click(function(){ 
     $('#centeredmenu').load('menu11.php'); 
     }); 
    }); 
</script> 

Так я сначала загрузите страницу и выберите команду menu3, которая затем загрузит menu3 в порядке, все последующие меню не будут загружаться, если я не обновляю страницу и не вернусь к началу снова и не выберите другое меню, которое я хочу. Ваша помощь очень ценится P

+0

Можете ли вы настроить скрипку с этим? вы получаете какие-либо ошибки в консоли? – haz0rd

+0

@ haz0rd Потерял меня на этом lol –

+0

@ haz0rd почти как если бы jquery не работал. Обычно вы не видите обновление pge, которое я не получаю при первоначальном изменении меню. когда я выбираю последующие меню, вы видите страницу, пытающуюся перезагрузить, что не должно происходить –

ответ

3

Вы, вероятно, перезапись меню при загрузке нового контента, так что вам нужно делегированного обработчик события:

$('#centeredmenu').on('click', '[id^="menu"]', function(e) { 
    e.preventDefault(); 
    $('#centeredmenu').load(this.id + '.php'); 
}); 

также элементы с пустыми HREF-х делает перезагрузите страницу, вы должны использовать знак # в своих href и предотвратить действие по умолчанию в обработчике событий.

+0

Большое спасибо, ребята, я использовал # на hrefs, обработчик событий решил проблему, используя вышеприведенный фрагмент :) –