2011-04-04 211 views
-1

我有一些PHP的经验,但不是在JQuery那么多。jquery效果不起作用

我admin.php的网页有一个已命名的ID,其中内容被通过AJAX加载的“表1”分区:

document.getElementById("table1").innerHTML=xmlhttp.responseText; 

XMLHTTP从中有一些jQuery效果一样突出的表行sorgula1.php页面获取数据。当我试图单独运行sorgula1.php时,突出显示可以工作,但是当它通过ajax加载到admin.php时,突出显示和其他JQuery特效无法正常工作。我已经尽了一切努力使其工作,但我总是失败。 对于那些你们谁就会要我删除$(文件)。就绪(函数()语句,我通知您它不工作

这里是sorgula.php代码:sorgula1.php

请具体介绍一下答案guys.Thanx所有答案

+0

您可能希望阅读[heredoc](http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc)以帮助清理您的码。 – 2011-04-04 03:02:28

+0

我希望所有的答案都足够具体。如果不是的话,我会把这些男孩带回总部。 – Pointy 2011-04-04 03:32:18

回答

0

也许当您使用innerHTML属性时,javascript不起作用。我认为你可以通过使用jQuery load()函数来解决这个问题。

+0

谢谢EmCo,它使用Query load函数替代了innerHTML函数。 – 2011-04-05 05:20:47

0

问题是最有可能是通过AJAX加载的元素没有适用于他们的影响 - 你试图调用$(“#myTable的“).tablesorter();在ajax响应已被接收并注入DOM之后的javascript(再次)?

编辑对不起这也许应该是这个代码,您拨打:

$("tr").not(':first').hover(
    function() { 
    $(this).css("background","yellow"); 
    }, 
    function() { 
    $(this).css("background",""); 
    } 
); 

或使用.live()

+0

是的,我已经尝试过,但仍然没有工作:( – 2011-04-04 17:43:49

0

尝试重写你的事件Live()。我会说它不起作用,因为元素是在jQuery函数注册后加载的。所以请尝试

$("tr").not(':first').live('hover',function(){ // CODE }); 
+0

我已经写了这段代码并运行它,但它甚至没有回应我。我做错了什么?代码:$(“tr”)。not(' :'('hover',function(){$(this).css(“background”,“yellow”);},function(){$(this).css(“background”,“”) );}); – 2011-04-04 17:44:56