2009-12-12 6 views
1

J'ai une liste déroulante et des styles qui lui sont appliqués de deux fichiers js, inclus dans la tête comme:comprennent fichier source jQuery dans asp.net

<script type="text/javascript" src="js/functions.js"></script> 
<script type="text/javascript" src="js/jquery.jqtransform.js"></script> 

Tout ce qu'il fonctionne bien quand le chargement pour la première fois.

Mais quand je fais une demande de paiement ajax sur cette page les styles appliqués avant, sont perdus, j'ai donc inclus les fichiers js src à partir du code behing comme:

protected void Page_PreRender(object sender, EventArgs e) 
{ 
    loadJs(); 
} 

private void loadJs() 
{ 
    ScriptManager.RegisterClientScriptInclude(this, 
     typeof(Page), 
     "AlertScript", 
     ResolveClientUrl("~/Site/js/jquery.jqtransform.js")); 
    ScriptManager.RegisterClientScriptInclude(this, 
     typeof(Page), 
     "AlertScript2", 
     ResolveClientUrl("~/Site/js/functions.js")); 
} 

Mais ... il est toujours pas fonctionnant bien que je vois dans le broswer - la source de vue que les dossiers de js sont chargés correctement dans le corps ...

Avez-vous une suggestion?

Merci d'avance.

Répondre

1

Dans votre fonction de retour ajax (sur la page html), vous devez réappliquer les commandes jquery exécutées lors du premier chargement de la page. JQuery parcourt le DOM et fait ce que vous lui dites. Lorsque l'appel ajax renvoie et remplace une partie de la page, tous les changements d'exécution pour cette région sont perdus, vous devez donc les réappliquer.

Fondamentalement, vous devez appeler n'importe quelle fonction est appelée dans jqtransform.js et dans functions.js au chargement de la page sur l'élément html qui est remplacé.

+0

Merci beaucoup. Ça a marché. –