2008-10-21 4 views
2

J'essaie d'utiliser des méthodes de page dans ma page asp.net. J'ai activer les méthodes de page définies sur true sur le gestionnaire de scripts, l'attribut webmethod défini sur la méthode, la fonction est chaîne statique publique, je sais que la fonction fonctionne car lorsque je l'exécute à partir de mon code génère le résultat attendu, mais Je l'appelle par la méthode de la page dans ma fonction de résultat, le résultat est toujours alerté comme indéfini. Si j'utilise fiddler, il ne semble même pas qu'il y ait du trafic supplémentaire ou qu'une nouvelle requête soit créée. Je cours le site sur le port 82 si cela fait une différence. Je suis à perte ici. Quelqu'un peut-il me donner des indications?asp.net page méthodes retourner undefined

+0

Montrez-nous du code! – Kon

+0

Est-ce 2.0 ou 3.5? –

Répondre

1

Dans votre PagesMethods appel, supprimer les parenthèses des fonctions de rappel et d'erreur:

PageMethods.getAdCodeInfo(value, onSuccess, onError) 

onSuccess et onError sont essentiellement variables qui pointent vers les fonctions. Vous n'avez donc pas besoin de parenthèses pour les noms de variables.

0

OK, stupide moi. Voici du code.

function getName() 
{ 
    var ddlAdCodes=$get('<%=ddlAdCodes.ClientID %>'); 
    var value=ddlAdCodes.options[ddlAdCodes.selectedIndex].value; 
    //alert(value); 
    PageMethods.getAdCodeInfo(value,onSuccess(),onError()); 
} 

function onSuccess(result) 
{ 
    alert(result); 
} 

function onError(error) 
{ 
    alert("error "+error); 
} 
+0

La prochaine fois, appuyez sur le bouton "Code Sample" (101010) pour le formater correctement et le rendre plus facile à lire. – Kon

Questions connexes