Modifier l'url de asp.net page de code derrière
Je suis en train de changer l'url de courant aspx page à l'autre adresse, sur un clic de bouton. À L'Aide De La Demande.Url.AbsoluteUri je peux obtenir l'url, mais est-il possible de modifier?. Si oui, quelles actions il prendre je veux dire qu'il sera une nouvelle demande ou d'un message de retour.
S'il vous plaît laissez-moi savoir votre point de vue.
Grâce,
Mehul makwana
Dépend de ce que vous essayez d'atteindre; êtes-vous essayer de rediriger le navigateur vers une nouvelle page, de traitement ou de transfert vers une autre page?
OriginalL'auteur mehul9595 | 2010-09-23
Vous devez vous connecter pour publier un commentaire.
Non, il n'est pas possible de modifier l'URL de la page en cours de code derrière.
Lorsque le code s'exécute, une nouvelle demande ou de la publication est déjà en cours, de sorte que la page actuelle n'existera plus une fois que la nouvelle réponse est complète.
Lorsque la page qui est actuellement en cours de création se charge dans le navigateur, l'URL sera utilisée au lieu de l'URL de la page en cours. Cette URL a déjà été décidé avant la demande, de sorte que vous ne pouvez pas modifier.
Ce que vous pouvez faire est d'utiliser la
Response.Redirect
méthode pour renvoyer une page de redirection du navigateur avec l'URL que vous souhaitez. Le navigateur va alors faire une autre demande au serveur pour obtenir la page URL.Si vous souhaitez modifier l'URL de la page pour obtenir sans l'aide d'une redirection, de le faire dans le code derrière est trop tard. Vous devez changer ce que fait le bouton à l'aide d'un script client, afin qu'il demande à la nouvelle URL directement, sans faire une publication.
Oui, si vous voulez changer l'URL, le navigateur affiche dans le champ d'adresse, une nouvelle demande est la seule façon.
Afin de faire de cette nouvelle demande entraînerait problème de performance. avez-vous un autre moyen de le faire. sinon je vais aller avec celui-ci.
Non, il n'y a pas d'autre moyen. Il n'est pas possible de faire de l'affichage du navigateur de n'importe quoi dans le champ de l'adresse de l'URL de la page qui est chargé.
yup ur droit. Merci copain pour l'aider.
OriginalL'auteur Guffa
Vous pouvez utiliser
Response.Redirect()
ouServer.Transfer()
, bien que j'aimerais utiliser la première plutôt que la seconde.OriginalL'auteur Lloyd
Envisager d'utiliser jQuery ou similaire bibliothèque, il vous permettra de modifier le DOM de la page. Si vous pouvez générer de nouvelles URL sur un serveur, que d'envisager l'envoi d'une requête ajax vers un serveur. Méthode Web, vous retournez certains d'objet personnalisé qui contiendra une nouvelle URL. Vous utiliserez les données renvoyées par une méthode web et de le remplacer à l'aide de jQuery, ou de toute autre bibliothèque.
L'idée est que vous cliquez sur un lien. Navigateur Web fait un appel AJAX pour une méthode web (web service) grâce à jQuery. Service Web ressemble à votre demande, décide quoi faire, construit une nouvelle URL et renvoie à la fonction qui a d'abord envoyé une demande. Dans la fonction-vous de lire les données renvoyées (URL) et remplacer votre URL.
OriginalL'auteur
il sera un
new request
.Vous pouvez essayer avec
Response.Redirect
ouServer.Transfer
Merci je suis clair maintenant.
pas de. si vous souhaitez déplacer vers une autre url que vous devez faire la publication. alors que tous les contrôles initilize
OriginalL'auteur anishMarokey