2012-02-02 3 views
0

Я использую JQuery для загрузки внешних страниц index.html ссылок меню имеет функцию - ОJQuery для загрузки внешних страниц в DIV

function about() {jQuery('#container').load('about.html');} 

Я использую функцию JQuery на каждом ребенок странице, чтобы получить данные из XML. По-видимому, вэнь я называю jquery только один раз на index.html и использую то же самое для ребенка, он работает по-разному. Когда я просто нажимаю на него, #container, но не содержит внешних данных файла. Но когда я дважды нажимаю на вкладку меню, я вижу данные. Я действительно потерян и нуждаюсь в помощи, чтобы понять, как ват делать неправильно. hashworld.com.au/test/test.html Я загрузил код здесь, пожалуйста, посмотрите

+0

как и где вы называете функцию()? можете ли вы опубликовать какой-то код в скрипке? – fcalderan

+0

Нам нужно больше узнать о вашем коде. Что в XML-файле? Каковы ваши события кликов в меню? Правильны ли пути к вашим html-файлам в функции загрузки? – Jon

+0

На странице указателя есть ссылка на меню - About и я определил функцию как - \t function about() {jQuery ('# container'). Load ('about.html');}, который загружает about.html в контейнер id той же страницы index.html. он отлично работает, если я вызываю jquery на каждой дочерней странице, но если удалить из дочерней страницы и вызвать только один раз в index.html, он не будет работать так же. Я должен был щелкнуть дважды, чтобы увидеть результаты. – Drozzy

ответ

0

В rules.html пытаются изменить это:

<script src="js/xmlConfig.js"></script> 
<script> 
    function parseXml(xml){ 
     $(xml).find("rules").each(function(){ 
     $(xml).find("rule").each(function(){ 
      var rule = $(this).text(); 
      $('<li></li>').html(rule).appendTo('.content ul'); 
     }); 
     }); 
    } 
</script> 

... в этом:

<script> 
$(document).ready(function() 
{ 
    $.ajax({ 
    type: "GET", 
    url: "xml/global_webconfig.xml", 
    dataType: "xml", 
    success: parseXml 
    }); 

    function parseXml(xml){ 
     $(xml).find("rules").each(function(){ 
     $(xml).find("rule").each(function(){ 
      var rule = $(this).text(); 
      $('<li></li>').html(rule).appendTo('.content ul'); 
     }); 
     }); 
    } 

}); 

</script> 
+0

Да, я обновил одну и ту же страницу, и теперь она отлично работает. Woohoo !! Но еще 10 страниц, которые используют один и тот же xml, и я не хочу загружать xml снова и снова. Можете ли вы рассказать, как загрузить xml-скрипт один раз на индексной странице. См. Www.hashworld.com/test/test.html, поскольку я обновил страницу. – Drozzy

+0

Я использую тот же xml для других страниц и хочу снова и снова запрещать загрузку xml для всех страниц. Можете ли вы посоветовать, как называть это только 1 раз на главной странице и том же xml для дочерних страниц, которые загружаются при нажатии на вкладки меню. www.hashworld.com/test/test.html – Drozzy

+0

На ваш начальный вопрос был дан ответ, поэтому вы должны создать новый вопрос ... Таким образом у вас будет больше шансов получить ответ; так как больше людей это увидит .... – PrimosK

Смежные вопросы