2012-11-17 45 views
0

我有一个问题。下面的脚本工作得不好。问题是当我点击列表页面中的链接时,我得到详细信息,但是当我再次点击时,他刷新2次,当我点击2次时,他刷新4次,等等。Jquery Ajax .load loops

有人能帮助我,我做错了什么?

氪的BA

indexpage

<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script> 
<script src="/admin/js/general.js"></script> 

<div id="content"></div>  
<div id="contentLister"></div> 

的Javascript general.js

$(document).ready(function(){ 
//returns LISTER 
$('ul#ajaxNav li a').click(function() { 
    var page = $(this).attr('href');   
    $('#content').fadeOut().load('classes/cAjaxLister.php'+ page).fadeIn(); 
    return false; 
}); 

//returns Detail 
$('td ul#ajaxLister li a').click(function() { 
    var page = $(this).attr('href');   
    $('#contentLister').fadeOut().load('classes/cAjaxLister.php'+ page).fadeIn(); 

    return false; 
    });  

}); 

李斯特和detailpage

echo '<td> 
     <ul id="ajaxLister" class="actions" > 
     <li><a title="View" class="view" href="?action=view&item=' . $p_UrlItem . '&id=' . $resultId[0] . '">view</a></li> 
     <li><a title="Edit" class="edit" href="?action=edit&item='.$resultId[0].'">edit</a></li> 
     <li><a title="Delete" class="delete" href="?action=delete&item='.$resultId[0].'">delete</a></li> 
     </ul> 
    </td>'; 
    echo '</tr>'.PHP_EOL; 

回答

0

我很抱歉,因为我也许不太懂行与JavaScript,但问题似乎来自点击A标签。你需要在你click功能使用一个event参数,然后防止链路从重定向:

$(document).ready(function(){ 
    //returns LISTER 
    $('ul#ajaxNav li a').click(function(event) { 
     event.preventDefault(); 
     var page = $(this).attr('href');   
     $('#content').fadeOut().load('classes/cAjaxLister.php'+ page).fadeIn(); 
     return false; 
    }); 

    //returns Detail 
    $('td ul#ajaxLister li a').click(function(event) { 
     event.preventDefault(); 
     var page = $(this).attr('href');   
     $('#contentLister').fadeOut().load('classes/cAjaxLister.php'+ page).fadeIn(); 

     return false; 
     });  

    }); 

http://api.jquery.com/event.preventDefault/