在存在scriptaculous时加载页面后,Jquery加载重定向无限

时间:2015-01-12 07:22:10

标签: jquery ajax scriptaculous

当我使用jQuery加载加载页面时,如果正在加载的页面内部有scriptaculous,那么页面在第一次加载后会反复重定向到自身。这是我用来加载页面的jquery代码:

 jQuery( document ).ready(function( $ ) {
// Code that uses jQuery's $ can follow here.


///////////////////////////////////////////////////////////////////////////////

$(document).on('click', 'a[rel*=charger_tout]', function(e) { 

e.preventDefault();

    var myId_to_update_here = $(this).data('ajax');

    var afficher_chargement = $(this).data('icon');

    if(afficher_chargement=='Oui')
    {
        $('#'+myId_to_update_here).html('<img src="images/facebook_style_loader.gif" />');
    }
    //Fin de l'affichage du chargement si le data-icon='Oui'



  $('#'+myId_to_update_here).load($(this).attr('href'), function(responseText, textStatus, XMLHttpRequest) {
            if(textStatus == 'error') {

                $('#'+myId_to_update_here).html('<p>Oupps.. There was an error making the AJAX request. Maybe your internet connection is slowing down.</p>');
            }
        });

  return false;
});

///////////////////////////////////////////////////////////////////////////////

});

这里是链接到必须加载的页面的html

<a href="brouillons.php?membre=<?php echo $membre; ?>" rel="charger_tout" data-ajax="id_du_milieu" data-icon="Oui">charger_tout</a>

如何在我第一次点击页面加载后停止无限加载?

1 个答案:

答案 0 :(得分:0)

解决方案是检测它是否是Ajax请求,或者是否正常加载脚本以及是否是Ajax请求,然后我不显示scriptaculous,否则我会显示它。

 if(@$_SERVER['HTTP_X_REQUESTED_WITH']!='' && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
        {
    //I do not display scriptaculous here
    }
    else
    {
    //I can add scriptaculous
    }