2009-05-28 7 views
1

Dans mon MasterPage, j'ai un ScriptManager qui a un ScriptReference à mon fichier jquery.js. Cela a toujours fonctionné sans problème, toutes les pages de contenu qui utilisent jquery fonctionnent bien.Page maître ASP.NET + pageLoad() = tue jquery?

Récemment, j'ai ajouté le bloc de script javascript suivant à la fin de mon MasterPage:

function pageLoad(sender, args) {
}

En ajoutant simplement la méthode pageLoad ci-dessus, aucun code jquery est exécuté à partir l'un de mes pages de contenu. Pourquoi aurait juste un chargement de page dans la page principale ont cet effet?

Merci d'avance pour tout renseignement.

Répondre

0

Pourquoi ne pas utiliser simplement:

$(document).ready(function() { 
    // do that funky thing 
} 
+1

Dans ce cas particulier, j'ai besoin du code que j'appellerai après chaque publication partielle que seul pageLoad() fournit. J'ai oublié Sys.Application.add_init() cependant, je vais voir si cela aide aide. –

1

Il ressemble à l'aide Sys.Application.add_init() au lieu de document.ready() ou pageLoad() dans mon Maître page résolu mon problème.

Les détails sur mon problème sont probablement trop longs, mais cela peut aider quelqu'un d'autre si j'essaie au moins d'expliquer ce qui se passe.

Ma page principale possède un modèle de contenu "navigation" qui héberge le contrôle ASP.NET TreeView. Je voulais garder la position défilée (il y a quelques nœuds dedans) de cette TreeView après les publications. Pour ce faire, je joins un appel à la fonction js suivante sur l'événement onscroll d'un div entourant mon contrôle TreeView:

function SetDivScrollPosition() { 
var strCook = document.cookie; 
if (strCook.length > 0) { 
    var cookies = strCook.split(";"); 
    for (var i = 0; i < cookies.length; i++) { 
     var mySplit = cookies[i].split("="); 
      document.getElementById(mySplit[0].replace(" ", "")).scrollTop = mySplit[1]; 
    } 
} 

}

Cependant, j'ai aussi d'autres divs défilants dans d'autres contenus pages et je voulais également garder une trace de ces positions défilantes après les publications (complètes ou partielles). Donc, ce que je devais faire était aussi d'appeler SetDivScrollPosition() de la fonction document.ready() de ces pages de contenu.

1

Est-il possible que la version de votre page (ou des fichiers .js inclus) ait déjà une méthode pageLoad définie? Si tel est le cas, votre page pourrait avoir deux fois la fonction pageChargement, ce qui causerait le problème que vous décrivez.

Questions connexes