none
<input type='submit' value='Salvar' class="btn btn-success" /> RRS feed

  • Pergunta

  • Olá,

    como poderia para ao clicar o botão salvar mostrar uma mensagem com as opções gerar PDF sim ou não.

    Se a opção for gerar PDF é direcionado para os POst abaixo:

      [HttpPost]
            [ValidateAntiForgeryToken]
            public ActionResult Create_PDF(Atendimento atendimento)

    neste CREATE eu pegaria o id retornaria para a VIEW CREATE para gerar o PDF:

     function fcGerarPDF() {
            window.location.href = "@Url.Action("Report", new { id = "PDF" })?codigo=" + document.getElementById("id").value;
            
        }

    OU 

    [HttpPost]
            [ValidateAntiForgeryToken]
            public ActionResult Create(Atendimento atendimento)

    Eu pensei em algo assim, rsrs:

    <a href="/Atendimento_/Create"><input type='submit' value='Salvar' class="btn btn-success" /> </a>
     <a href="/Atendimento_/Create_PDF"><input type='submit' value='Salvar e gerar PDF' class="btn btn-success" /> </a>

    Mas, não funciona, o comando vai para ActionResult Create.


    • Editado Wilson Boris terça-feira, 1 de setembro de 2015 16:20 complemento
    terça-feira, 1 de setembro de 2015 12:50

Respostas

  • Wilson Boris faça assim, na minha visão é mais intuitivo

    Faça uma View assim:

    @{
        ViewBag.Title = "Relatório";
    }
    
    @using (Html.BeginForm("Relatorio", "Grid", FormMethod.Post))
    {
        <p>
            @Html.CheckBox("PDF", false) Deseja gerar o PDF?
            <button type="submit">Enviar</button>
        </p>
    }

    Ou seja, dentro do seu `form` coloque um input do tipo checkbox que vai definir se é relatório em PDF ou comum. Para resgatar esse checkbox seria assim no seu controller:

    [HttpPost()]
    public IActionResult Relatorio(bool PDF)
    {
    	//se PDF verdadeiro entra no primeiro return se não vai no segundo
    	//ai tu defini como vai utilizar
    	if (PDF) return RedirectToAction("ActionName", "ControllerName", new { Id = 1 });
    	return RedirectToAction("ActionName", "ControllerName", new { Id = 1 });
    }
    Dessa forma fica melhor o trafego da informação e bem prático para o usuário.


    Fulvio Cezar Canducci Dias

    • Marcado como Resposta Wilson Boris sexta-feira, 25 de setembro de 2015 22:56
    segunda-feira, 21 de setembro de 2015 13:09