none
radiobuttonlist mvc3 RRS feed

  • Pergunta

  • Estou fazendo um relatório em reportViewer e tenho que colocar na View um radiobuttonlist e além disso tenho que pegar o valor que o usuário selecionou e passar como parametro gostaria tb de saber como pegar esse valor via json ?
    Junior
    segunda-feira, 23 de maio de 2011 11:32

Todas as Respostas

  • provavelmente voce terá uma propriedade do tipo enumerador, então seu codigo será mais ou memos assim:

     

    @Html.RadioButtonFor(model => model.OpcaoSelecionada, Enumerador.Tipo1)
                  Tipo 1<br />
    @Html.RadioButtonFor(model => model.OpcaoSelecionada, Enumerador.Tipo2)
                  Tipo 2<br />
    @Html.RadioButtonFor(model => model.OpcaoSelecionada, Enumerador.Tipo3)
                  Tipo 3<br />
    @Html.RadioButtonFor(model => model.OpcaoSelecionada, Enumerador.Tipo4)
                  Tipo 4<br />
    

     

    segunda-feira, 23 de maio de 2011 12:09
  • Fernando peguei esse tutorial aqui http://john.katsiotis.com/blog/asp.net-mvc-3---a-radiobuttonlist-for-enum-properties

     

    Mais tem alguns detalhes que não estou entendendo,, como eu associo o @html.RadiobuttonFor(model => model.OpcaoSelecionda,Enumerador.Tipo2)

    Na minha view ?


    Junior
    segunda-feira, 23 de maio de 2011 12:40
  • eufiz na corrida mas acho que ficou bom :)

     

    //no seu model: 
    
    public enum OpcoesRelatorios
      {
        relatorioTipo1 = 1,
        relatorioTipo2= 2,
        relatorioTipo3= 3
      }
    
    public class RelatorioModel {
    
     public OpcoesRelatorios OpcoesRelatorios { get; set; }
    
    }
    
    //no seu controle
    
    public ActionResult Reletorio()
        {
       RelatorioModel model = new RelatorioModel();
          return View(model);
        }
    
    [HttpPost]
    public ActionResult Reletorio(RelatorioModel model)
        {
         if (model.OpcoesRelatorios = OpcoesRelatorios.relatorioTipo1)
          return View("ViewDoRelatorioTipo1", model);
        }
    
    
    //na sua view
    
    @model RelatorioModel
    @using(Html.BeginForm())
    {
    <div>
    @Html.RadioButtonFor(model => model.OpcoesRelatorios , OpcoesRelatorios .relatorioTipo1 )
           Tipo 1<br />
    @Html.RadioButtonFor(model => model.OpcoesRelatorios , OpcoesRelatorios .relatorioTipo2)
           Tipo 2<br />
    @Html.RadioButtonFor(model => model.OpcoesRelatorios , OpcoesRelatorios .relatorioTipo3)
           Tipo 3<br />
    @Html.RadioButtonFor(model => model.OpcoesRelatorios , OpcoesRelatorios .relatorioTipo4)
           Tipo 4<br />
     </div> 
        <input type="type" name="name" value=" " />
    }
    
    

     

    basicamente é isso

     

     

     

     

    segunda-feira, 23 de maio de 2011 13:33
  • Fernando e se pego esse valor do banco de dados, como faria ?


    Junior
    segunda-feira, 23 de maio de 2011 13:59
  • Não entendi bem, os valores do banco seriam os tipos de Relátorios?

    //no controller

      ViewBag.ListaTipoRelatorios = Contexto.RetornarRelatorios();
    
    //na view

    @foreach (var item in ViewBag.ListaRelatorios)
    {
    @Html.RadioButtonFor(model => model.OpcoesRelatorios , item.Tipo) item.Descricao<br />
    }
    segunda-feira, 23 de maio de 2011 14:09
  • é um flag no banco, flstat fiz assim e aparentemente funcinou só quero saber como pego o valor dele via script

    <table>
      <tr>
        <td colspan="3">
          Selecione o tipo de cobrança
        </td>
      </tr>
      <tr>
        <td>
           @Html.RadioButtonFor(model => model.Flstat,1) Incluído
           @Html.RadioButtonFor(model => model.Flstat,2) Tratado
           @Html.RadioButtonFor(model => model.Flstat,3) Pendente pela empresa
           @Html.RadioButtonFor(model => model.Flstat,9) Resolvido
           @Html.RadioButtonFor(model => model.Flstat,8) Sem Solução 
           @Html.RadioButtonFor(model => model.Flstat,6) Todos
        </td>
      </tr>
      <tr>
        <td>
          <input id="btn_imprimir" type="button" title="Imprimir Relatório" value="Gerar Relatório" />
        </td>
      </tr>
    </table>
    


    Junior
    segunda-feira, 23 de maio de 2011 14:17
  • Desculpe mas não consegui entender o que voce precisa. : )

     

    segunda-feira, 23 de maio de 2011 14:52
  • preciso de um radiobuttonlist com essas opções e no botão imprimir quero pegar o valor do radiobuttonlist selecionado e passar como parametro para um relatorio, entendeu ?
    Junior
    segunda-feira, 23 de maio de 2011 15:18
  • Ok, eu nunca uso o reportViewer mas pelo que eu saiba não ha um helper mvc. Voce deve estar querendo redirecionar para um webForms né.

    então, como eu disse,  no post da sua pagina (clicando no botão imprimir):

    [HttpPost]
    public ActionResult Reletorio(RelatorioModel model)
      {
       if (model.OpcoesRelatorios = OpcoesRelatorios.relatorioTipo1)
    Response.Redirect("Report.aspx");
    else
    return View(model); }
    segunda-feira, 23 de maio de 2011 16:54
  • Fernando em termos de relatório tenho que passar isso via script, só quero saber como pego o valor do radiobuttonlist selecionado dentro de um script, não só dele como tb vou precisar pegar os valores de dois text onde informo data inicial e final.

     

    O que vc usa pra gerar relatórios ?

     

     


    Junior
    segunda-feira, 23 de maio de 2011 17:22