Bonjour,

J'ai vu qu'on pouvait effectuer des requetes Ajax dans MVC3. J'ai rencontré un cas d'utilisation qui s'y prêtait bien, mais je ne sais pas vraiment comment implémenter ce Ajax.BeginForm. Voila la situation:

Je dois faire une page qui permette de modifier les utilisateurs.J'ai donc créé une vue "ChooseUser" que j'appelle via un lien en lui passant la liste de mes users:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<li>@Html.ActionLink("Edit a user", "ChooseUser", "Administrer")</li>
Je souhaiterais donc avoir d'abord une liste déroulante qui récupère les utilisateurs. J'ai fait mon select dans un AjaxForm():
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
@model IEnumerable<GestionCustoms.Models.User>
<h2>EditUser</h2>
 
Choose a User:
@using (Ajax.BeginForm("EditUser", new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "#FormEdit" }))
{ 
    foreach(var user in Model){
        <text><select name="IdUser" id="@user.UserId">@user.Nom</select></text>
    }
}
Et je voudrais afficher deux champs modifiables préremplis avec les données de l'utilisateur selectionné en dessous de cette liste lorsqu'on relache la selection dans la liste, donc juste en dessous de mon select, j'ai quelquechose comme ça(dans la même vue):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<div id="FormEdit">
@using (Html.BeginForm())
{
  Html.EditorFor( /*le user selectionné*/->/*le user.sonNom*/)
  Html.EditorFor(/*le user selectionné*/->/*le user.sonEmail*/)
  <input type="submit" />
}
</div>
Je ne vois pas comment implémenter cela, que dois-je mettre dans l'action "EditUser" appelée par le 1er formulaire Ajax? Comment je recupere l'utilisateur selectionné et comment le renvoyer à cette même vue?

Bonne journée,