2010-06-01 8 views
2

J'ai un formulaire d'édition qui utilise un formulaire ajax à soumettre au contrôleur. Selon les données soumises, je redirige l'utilisateur vers l'une des deux pages (en retournant une vue partielle). Les deux pages s'appuient sur javascript/jquery et n'utilisent rien de commun entre les pages.asp.net MVC Vues partielles comment initialiser javascript

Quelle est la meilleure façon d'initialiser ces javascripts sur chaque page? Je sais qu'il y a AjaxOption OnComplete mais les deux pages sont assez dynamiques selon le modèle passé et je préfère garder le javascript pour les deux pages séparément plutôt que d'avoir une méthode commune.

Merci

Répondre

0

Si vous utilisez jQuery puis dans les pages partielles, vous pouvez écrire

$(document).ready(function() { 
    // put all your javascript initialisation here. 
}); 

Mise à jour: dessus ne fonctionnera pas. Donc tu peux essayer ça.

Vous pouvez appeler une méthode sur On_PartialLoad() sur AjaxOption.OnComplete. Chacune de ces parties peut fournir sa propre implémentation de On_PartialLoad().

So In Partial1 vous pouvez avoir

function On_PartialLoad(){ 
    //Partial_1 Implementation 

} 

So In Partial2 vous pouvez avoir

function On_PartialLoad(){ 
    //Partial_2 Implementation 

} 
+0

Cela ne fonctionnera pas comme la page a déjà chargé et $ (document) .ready ne se déclenche pas sur les mises à jour partielles de page. – lancscoder

+0

$ (document) .ready tirera. http://stackoverflow.com/questions/312718/jquery-document-ready-and-asp-net-mvc-partial Mais vous devez avoir le $ (document) .ready dans le partiel qui n'est pas dans le conteneur page –

+0

@Simon: Laissez-nous aussi savoir lequel a travaillé. – Amitabh

Questions connexes