Invocation de méthodes côté serveur à partir de JavaScript côté client
Dans ce scénario, vous souhaitez invoquer une méthode côté serveur dans le code -behind page à partir d'une fonction JavaScript déclenchée par un clic sur un bouton. Voici une solution complète sans utiliser de contrôles ASP.NET :
Pour y parvenir, vous devez utiliser une méthode Web dans votre code-behind. Une méthode Web est une méthode dans la page code-behind qui peut être invoquée à distance à partir d'un script côté client.
Code-Behind modifié (C#) :
[WebMethod] public static string SetName(string name) { // Perform some server-side functionality here return "Success"; }
Fonction JavaScript :
function btnAccept_onclick() { var name = document.getElementById('txtName').value; // Invoke the SetName web method with the 'name' parameter PageMethods.SetName(name, function (result) { // Success handler: Perform post-invocation actions }, function (error) { // Error handler: Handle invocation failures }); }
Supplémentaire Exigences :
Pour exécuter le code JavaScript avec succès, vous devez inclure les scripts suivants dans votre page ASPX :
<asp:ScriptManager ID="ScriptMgr" runat="server" EnablePageMethods="true"></asp:ScriptManager>
Utilisation :
Lorsque l'utilisateur clique sur le bouton HTML, la fonction JavaScript btnAccept_onclick() est déclenchée, qui transmet le paramètre 'name' à la méthode web SetName(). La méthode Web exécute la fonctionnalité souhaitée côté serveur et répond par un résultat ou un message d'erreur.
Remarque : Cette approche nécessite une page Web Forms, contrairement au scénario dans lequel ASP.NET les contrôles ne sont pas autorisés. Le gestionnaire de script assure la bonne exécution des appels du service web côté client.
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!