2012-02-02 186 views
0

我使用jquery加载index.html的菜单链接外部网页上有功能 - 关于jQuery来加载外部网页中DIV

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

我使用的每个子页上的jQuery函数来从数据XML。显然,我在index.html上调用jquery一次,并使用相同的孩子,它的工作方式不同。当我单击它时,清空#container,但没有外部文件数据。但是,当我双击菜单选项卡,然后我看到的数据。我真的迷失了,需要帮助才能弄清楚自己做错了什么。这里 hashworld.com.au/test/test.html我已经上传的代码,请看看

+0

如何以及在哪里调用about()函数?你可以在小提琴中发布一些代码吗? – fcalderan 2012-02-02 13:36:36

+0

我们需要看到更多的代码。什么是XML文件?菜单上的点击事件是什么?加载函数中的html文件路径是否正确? – Jon 2012-02-02 13:36:48

+0

索引页面有一个菜单链接 - About和我已经定义的函数为 - \t function about(){jQuery('#container')。load('about.html');}它将about.html加载到容器中id相同的index.html页面。它工作正常,如果我在每个子页面上调用jquery,但是如果从子页面中移除并且只在index.html中调用一次,它不起作用。我不得不点击两次才能看到结果。 – Drozzy 2012-02-02 13:39:14

回答

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

是的,我已经更新了相同的页面,现在它工作正常。哇噢!但我有10多页使用相同的XML,我不想一次又一次加载XML。你能告诉如何在索引页面上加载一次xml脚本。请参阅www.hashworld.com/test/test.html,因为我已更新页面 – Drozzy 2012-02-02 14:39:56

+0

我对其他页面使用相同的xml,并且想要一次又一次地为所有页面加载xml。你能建议如何在主页面上调用它1次,而在单击菜单选项卡时加载的子页面也是如此。 www.hashworld.com/test/test.html – Drozzy 2012-02-02 14:45:50

+0

您的第一个问题已得到解答,因此您应该创建一个新问题......这样您就有更多机会获得答案;因为更多的人会看到它...... – PrimosK 2012-02-02 14:59:20