Appel de méthodes côté serveur à partir de fonctions JavaScript côté client
Dans la quête d'une intégration transparente du code frontend et backend, cela devient souvent nécessaire pour appeler des méthodes côté serveur à partir de fonctions JavaScript côté client. Explorons comment réaliser cette communication dans le contexte d'une page ASPX.
En commençant par le balisage HTML, nous avons un bouton HTML avec un gestionnaire d'événements onclick lié à une fonction JavaScript appelée btnAccept_onclick(). Cette fonction capture la valeur saisie dans un champ de texte nommé « txtName ». Notre objectif est de transmettre cette valeur à une méthode côté serveur nommée SetName().
Dans le fichier code-behind, la méthode SetName() peut être définie comme une méthode public void recevant un paramètre de chaîne. Cependant, la clé pour permettre la communication entre le client et le serveur réside dans la création d'une méthode Web.
Pour créer une méthode Web, décorez la méthode avec l'attribut [WebMethod]. Cela lui permet d'être invoqué à partir du code côté client. Par exemple,
[WebMethod] public static String SetName(string name) { // Code for some functionality return "Your String" }
Équipé de la méthode web, nous pouvons désormais effectuer l'appel depuis JavaScript. PageMethods.SetName() fournit l'interface nécessaire pour appeler des méthodes Web depuis le côté client.
PageMethods.SetName(name, onSuccessMethod, onFailMethod);
Pour une communication appropriée, assurez-vous d'inclure un ScriptManager dans votre page ASPX. Cela permet à ScriptManager de gérer les publications asynchrones et de gérer les appels de méthodes Web.
<asp:ScriptManager ID="ScriptMgr" runat="server" EnablePageMethods="true"></asp:ScriptManager>
En suivant ces étapes, vous pouvez initier de manière transparente une communication entre les fonctions JavaScript côté client et les méthodes côté serveur, offrant ainsi une intégration transparente entre les couches frontend et backend.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!