2010-09-06 8 views
0

Salut, comment puis-je transmettre une valeur côté client (JS) côté serveur (C#)?ASP.NET transmet une valeur javascript côté serveur

par exemple.

J'ai une table générée (après le chargement des images) et il contient des images et je veux sélectionner l'image et jeter l'ID du côté serveur.

Le uploade j'ai utilisé était JQuery Uploadify et moi avons une fonction "onComplete"

 
(simple code) 
'onComplete': function (event, queueID, fileObj, response, data) { 
    $('#imgs').append('<img id="' + queueID + '" src="' + response + '" alt="' + response + '" />'); 

Comment puis-je faire cela?

+0

votre question n'est pas claire. que voulez-vous dire par "jeter"? voulez-vous passer une valeur javascript au serveur pour faire quelque chose, ou devez-vous enregistrer une valeur du serveur au javascript? – RPM1984

+0

oui, c'est ce que je voulais dire. passer une valeur – jaysonragasa

Répondre

0

Pour envoyer une valeur de javascript au serveur que vous avez deux options:

  1. Utilisez AJAX si vous voulez rester sur la page actuelle
  2. Redirect à un script côté serveur et passer la valeur dans le querystring

considérons le premier cas:

en supposant que vous avez une méthode Web capable de recevoir la valeur sur le serveur:

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true" %> 
<script type="text/C#" runat="server"> 
    // Server side script in the code behind that will receive 
    // the value: The method needs to be static 
    // and decorated with the WebMethod attribute 
    [System.Web.Services.WebMethod] 
    public static string Foo(string id) 
    { 
     return "ok"; 
    } 
</script> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> 
<head id="Head1" runat="server"> 
    <title></title> 
    <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script type="text/javascript"> 
     $(function() { 
      // Send an AJAX request to the server 
      $.ajax({ 
       url: '/default.aspx/foo', 
       type: 'POST', 
       contentType: 'application/json; charset=utf-8', 
       // Pass the value as JSON string 
       // You might need to include json2.js for the JSON.stringify 
       // method: http://www.json.org/json2.js 
       data: JSON.stringify({ id: 'someId123' }), 
       success: function (result) { 
        // The result is also JSON 
        alert(result.d); 
       } 
      }); 
     }); 
    </script> 
</head> 
<body> 
    <form id="Form1" runat="server"> 

    </form> 
</body> 
</html> 
+0

merci Darin. Avez-vous un échantillon de travail pour cela? – jaysonragasa

+0

OK Je l'ai eu le travail. question rapide. dans "succès: fonction (résultat)" comment est-ce? Et si j'ai 2 paramètres dans ma méthode côté serveur? comment puis-je transmettre les valeurs côté client? – jaysonragasa

0

utilisez-vous Asp.net Forms? Si oui, vous comprenez le concept de Page Lifecycle et comment cela affecte l'état de la page?

Je suggère d'aller javascript tout le chemin dans celui-ci, s'il vous plaît voir jQuery + AJAX.

Questions connexes