2010-03-21 7 views
0

J'essaie de déclencher une méthode javascript en utilisant le OnBegin AjaxOption dans une méthode Ajax.ASP.NET MVC Ajax OnBegin/Complete Javascript Problème

Cependant, lors du débogage avec firebug le callback est incapable de trouver la méthode Javascript et je ne sais pas pourquoi.

Mon code est simple, tout d'abord j'utilise une méthode Ajax de base comme celui-ci:

Puis, sous ce que je decalre ce script.

<script type="text/javascript"> 

     function RunThisThing { 
      alert("WORK") 
     } 
    </script> 

Pourtant, lorsque je tente la page en cours d'exécution et en cliquant sur le lien, Firebug me dit "RunThisThing n'est pas défini".

Une idée de ce que je pourrais faire de mal?

Répondre

1

Vous avez quelques bugs dans votre code JavaScript:

  1. Il vous manque les parenthèses() après votre nom de fonction dans sa définition.
  2. Il vous manque le point-virgule sur votre relevé d'alerte.

Voici comment votre bloc JavaScript doit apparaître:

<script type="text/javascript"> 
    function RunThisThing() { 
    alert("WORK"); 
    } 
</script> 
+1

Je pense que vous n'êtes pas droit au point 3. Pour autant que je sais que l'attribut OnBegin reçoit soit le nom d'une fonction (sans parenthèses) ou en ligne (tel qu'un appel de fonction avec des crochets). Donc, les deux fonctionneront, mais votre suggestion entraînera probablement une fonction anonyme supplémentaire qui exécute votre code en ligne. –

+0

Mise à jour: Bien que les deux façons fonctionneraient, votre suggestion rendrait impossible la réception des arguments donnés au rappel OnBegin à moins que vous ne les passiez de nouveau explicitement. –