none
Múltiplos 'submit' Ajax.BeginForm() em uma tabela RRS feed

  • Pergunta

  • Olá,

    Tenho uma tabela onde cada linha é criada a partir de um Ajax.BeginForm() que traz os dados a partir de um controller. Cada linha contém um input 'submit' para resgatar as alterações feitas pelo usuário e enviá-la para o controller inserir a atualização no bd.

    Quando eu clico em qualquer botão, de qualquer linha, o retorno é sempre o mesmo. Acredito que esteja problemas com o POST múltiplo.

     

    Poderiam me indicar alguma forma de receber os valores do Ajax.BeginForm por meio do input submit nele existente??

     

    - View que exibe o trecho abaixo dentro de uma tabela.

     

     foreach (var item in Model)
                    {
                        var div1 = new HtmlString("<div id= divEditUsuario" + item.Id + ">");
                        @div1 
                        
                        using (Ajax.BeginForm("_exibeDados", "Usuario",
                        new AjaxOptions
                        {
                            UpdateTargetId = "divEditUsuario" + item.Id,
                            InsertionMode = System.Web.Mvc.Ajax.InsertionMode.InsertAfter,
                            HttpMethod = "Post",
                            OnSuccess = "alert('teste')"
                        }, new { id = "ajaxEditUsuario" + item.Id}))
                        {
                            
                            Html.RenderAction("_exibeDados", "Usuario", item);
    
                        }
    
                    }
    

     


    - PartialView com o <tr> e o conteúdo da linha:

     

    <tr>
        @Html.HiddenFor(model => model.Id)
        <td>
            <div class="editor-field"  >
                @Html.DropDownList("UsuarioId", String.Empty)
                @Html.ValidationMessageFor(model => model.UsuarioId)
            </div>
        </td>
        
    @* Demais campos... *@
    
        <td>
            <p>
                
                <input type="submit" value="Salvar" />
               
            </p>
        </td>
    </tr>
    


     

     

     


    • Editado JeanMarcelo5 quinta-feira, 1 de dezembro de 2011 11:51
    quinta-feira, 1 de dezembro de 2011 11:49

Todas as Respostas

  • Jean, 

     

    Pelo que entendi voce quer fazer vários posts dentro de uma tabela?

    Como por exemplo um por linha?

    Eu aconselharia não fazer desta forma.

    Tente usar o AJAX ou Jquery para esta solução

     

    por exemplo,   para cada linha  TR, determine um ID  e  a partir deste identificador,  o seu botao submit deve informar este e realizar uma alteração somente para esta linha,

    Procure alguns exemplos em Jquery,   acho que vai revolver melhor este seu problema.

     

    http://jquery.com/

     

    Se ainda tiver dificuldade,   me da um toque ai blz???

     

     

     

     

     

     


    http://fparmezani.wordpress.com
    domingo, 4 de dezembro de 2011 21:50