Lorsque nous avons un fichier .js que nous référençons à partir d'une page View et que nous avons des URL dans le rappel dans un fichier JS, nous rencontrons des problèmes avec les URL non résolues lorsque site en cours d'exécution sur le serveur Web intégré VS 2008 ou sur IIS7.URL de rappel JavaScript dans les fichiers .js codebehind dans ASP.NET MVC
Par exemple, nous avons ce morceau de code dans JS fichier
pending.createCallback(pending.webRoot + "../../WidgetZoneV2/MoveWidget/" + sData, pending.widgetAdmin.moveComplete);
Ce morceau de code fonctionne bien lorsqu'il est exécuté avec serveur web intégré (sur l'URL http://localhost:54354/WidgetZoneV2/)
mais échoue sur IIS7 où nous avons une URL comme celui-ci http://localhost/virtualdir/WidgetZoneV2
, parce que ce dernier cas l'URL dans la fonction de rappel se traduit en http://localhost/WidgetZoneV2
qui bien sûr n'existe pas.
Comment gérez-vous ce genre de cas? pour autant que je peux voir la seule option est de créer dynamiquement JS à l'exécution
Cela semble bien mais le code .NET s'exécuterait-il à partir du fichier .JS? Coz je n'insère pas mon JavaScript directement dans la vue mais plutôt un lien vers celui-ci. – mare
oh désolé mon erreur. bien ce que vous pouvez faire est d'envoyer les fichiers js à travers un gestionnaire et le vous pouvez modifier avec le code. J'ai fait un post sur mon blog expliquant cela http://www.thecodeface.co.uk/Post/View/1 –