cs_eddynamique
Messages postés13Date d'inscriptionsamedi 23 janvier 2010StatutMembreDernière intervention 7 août 2012
-
8 mars 2012 à 10:13
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 2016
-
30 déc. 2014 à 17:53
Bonjour à tous !
Je rencontre actuellement un problème avec Ajax et le C#.
J'aimerai pouvoir passer un paramètre du JS au C# lors de l'appel de la fonction du code behind par le JS. La raison est très simple, l'action à faire dans la BD par le code behind dépend du bouton cliqué par l'utilisateur.
Je vous mets un peu de code pour que vous visualisiez..
La fonction JS qui appel le code behind :
function AddFavoris() {
var response;
// J'aimerais passer un paramètre lors de cet appel...
AjaxLib.AddFavoris(AddFavoris_CallBack);
}
La fonction du code behind :
[Ajax.AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public string AddFavoris()
{
Site1.open_connection();
try
{
String strRequete = "";
if (estAdmin())
{
Utilisateur collaborateur = new Utilisateur(WebFormImputation.collaborateurSelected);
strRequete = "INSERT INTO TacheFavorite VALUES('" + collaborateur.getIdUtilisateur() + "',8)";
}
else
{
strRequete = "INSERT INTO TacheFavorite VALUES('" + Site1.getUser().getIdUtilisateur() + "',8)";
}
SqlCommand cmd = new SqlCommand(strRequete, Site1.cnn);
cmd.ExecuteNonQuery();
return "ok";
}
catch
{
return "Error";
}
}
La fonction JS de call_back qui récupère les retours du code behind exécuté :
function AddFavoris_CallBack(response) {
if (response == 'Error') {
alert("An Error occured in accessing the DataBase !!!");
}
else {
alert("Tâche ajoutée aux favoris avec succès !");
}
document.getElementById("ContentPlaceHolder1_idTacheFavoris").value = "";
}
cs_eddynamique
Messages postés13Date d'inscriptionsamedi 23 janvier 2010StatutMembreDernière intervention 7 août 2012 12 mars 2012 à 08:47
Bonjour,
Merci de vous interessez à ce sujet..
La librairie AjaxLib est en réalité ma propre librairie qui regroupe les fonctions qui utilisent Ajax.
Sinon pouvez vous être plus clair sur la requête Ajax "à la main" ? Je vois bien comment faire en PHP étant donnée qu'on appelle un script à partir de son URL, mais dans le cas présent en C#, je fais appel directement à une méthode d'une classe C#, sans me soucier de son adresse, je ne vois donc pas comment je pourrais passer mon paramètre via l'URL...
cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 12 mars 2012 à 17:25
Re,
Effectivement j'ai un peu de mal à comprendre comment tourne votre solution.
Pourquoi ne pas passer votre paramètre à la page c# via la requête ajax ?