2009-08-07 42 views
0

可怕地措辞的问题,我知道...jQuery的.load()向下移动时,DOM树

我尝试将网页加载到一个ASP内一个div不可靠加载js文件:列表视图。页面在第一次尝试时加载正常,但后续加载似乎不运行jquery.ui.js文件来对加载的页面进行分页。

我移动了调用来将加载的页面加载到.load()函数的回调函数中,但是这并没有解决问题。代码如下:

$(".clientModal").click(function() { 
      var clientID = $(this).attr("title"); 
      if ($(this).hasClass("highlight")) { 
       $('#ClientPanel' + clientID).slideToggle(200); 
      } 
      else { 
       $('#ClientPanel' + clientID).load("Details.aspx?id=" + clientID, null, function() { 
        $("#clientTabs").tabs(); 
        $('#ClientPanel' + clientID).slideToggle(200); 
       }); 
      } 
      $(this).toggleClass("highlight"); 
     }); 

这是一个功能页面加载()作为我们使用微软的Ajax的欢迎,并希望做它在页面加载,而不是对的document.ready内。任何想法为什么jquery.ui会在初始加载时工作正常,但不会在后续加载中工作?谢谢!

编辑! 让我在这里添加一些信息。我注意到,如果我从屏幕底部单击链接返回,它会按照它的操作,显示标签并正常工作。但是,如果我自上而下,它可以用于第一次点击,然后点击向下的树不能正常工作,但是,请点击树。

我在这里完全疯了吗? :)

回答

0

问题在于调用clientTabs的id。在向上移动树时,它没有任何问题,因为它找到了#clientTabs的第一个实例并应用了UI,并且在向上移动时,第一个是我想要的。当向下移动时,#clientTabs的第一个实例不是我所调用的那个,所以它不起作用。

所以,切换到一个类引用($(“。clientTabs”)),它现在工作得很好。有时,班级比IDS好...

0

尝试加载jquery.ui文件与您加载的页面,以及加载它的页面。加载的页面可能不知道jquery.ui。

+0

已经尝试过两种方式。似乎没有任何区别。 – riceboyler 2009-08-07 17:31:46