2009-06-16 8 views
3

Je voudrais mettre un div sur ma page principale que je peux mettre à jour partout dans mon site avec les mises à jour. dire « enregistré mise à jour », « il y avait une erreur », etc.Passant variable Ajax.ActionLink OnSuccess, OnComplete, onFailure, etc

Je vais le style de la div différemment selon le type de mise à jour. "échec", "succès", "info". Trucs de base jusqu'à présent. J'ai donc plusieurs ActionLinks dans tout le site et ils affichent leur contenu correctement dans updateTarget et je peux même les faire fonctionner correctement quand je leur passe des fonctions OnComplete, OnBegin, etc. Cependant, j'aimerais pouvoir envoyer un paramètre à cette fonction OnBegin.

Exemple: .OnBegin = "someFunction (« fail);"

Toutes les idées sur la façon d'accomplir ce que je fais ici?

Répondre

4
<% string message = "failed"; %> 
     <%=Ajax.ActionLink("TestController","TestAction", 
new AjaxOptions{OnBegin="myFunction('" + message + "')"}) %> 
1

Vous pouvez créer une fonction anonyme, et ensuite appeler votre fonction avec vos paramas

<%: Ajax.ActionLink("Text", "ActionName", new { id = item.id }, new AjaxOptions { HttpMethod = "Post", OnComplete = "function(){myFunction(" + item.id.ToString() + ");}" })%> 

Le script:

<script type="text/javascript"> 
    function onDelete(id) { 
     alert("hello "+id); 
    } 
</script> 
Questions connexes