Passer des paramètres à MVC, Ajax.ActionLink
Comment puis-je envoyer la valeur de la zone de texte en paramètre de la ActionLink?
Je besoin pour utiliser le Html.TextBoxFor
<%= Html.TextBoxFor(m => m.SomeField)%>
<%= Ajax.ActionLink("Link Text", "MyAction", "MyController", new { foo = "I need here the content of the textBox, I mean the 'SomeField' value"}, new AjaxOptions{ UpdateTargetId = "updateTargetId"} )%>
La Contolleur/Actions ressemble à ceci:
public class MyController{
public ActionResult MyAction(string foo)
{
/* return your content */
}
}
En utilisant MVC 2.0
Votre réponse : stackoverflow.com/questions/2595830/...
OriginalL'auteur LastCyborg | 2011-07-14
Vous devez vous connecter pour publier un commentaire.
La sémantiquement correcte de l'envoi de champs de saisie de valeurs (telles que les zones de texte) à un serveur en utilisant un html
<form>
et non de liens:Maintenant dans les actions de votre contrôleur, vous obtenez automatiquement la valeur de la
SomeField
entrée par l'utilisateur:Vous pouvez bien sûr tenter de violer le balisage sémantique et de la manière HTML est censé travailler, en insistant sur l'utilisation d'un
ActionLink
même si elle est erronée. Dans ce cas, voici ce que vous pouvez faire:et puis dans un autre fichier javascript discrètement AJAXify ce lien à l'aide de jQuery:
OriginalL'auteur Darin Dimitrov