Grab Control Not Typed in View Typed

Asked

Viewed 79 times

1

I need to take the page post the elements that I’m not creating from the model, for example the input with the id "type".

How can I catch him in the process ActionResult the elements are not created from the model which is typified in view?

Down the model:

public class BuscarProfissionalModel
{
    public bool tipoParticular { get; set; }
    public bool tipoConvenio { get; set; }
    public string nomeTipoConvenio { get; set; }
    public bool tipoDomiciliar { get; set; }
    public bool tipoLocal { get; set; }
    public string Nome { get; set; }
    public string Localizacao { get; set; }
    public string TipoAtendimento { get; set; }
}

Below the view:

@using (Html.BeginForm("Buscar", "BuscarProfissional"))
        {
            <div class="col-xs-12 busca3-content" id="busca3-content">
                <span>Buque por </span>@Html.TextBoxFor(m => m.Nome, new { id = "nomeProfissional", name = "nomeProfissional", placeholder = "Nome, Especialidade, Interesses" }) ;@*<input type="text" id="nomeProfissional" name="nomeProfissional" placeholder="Nome, Especialidade, Interesses">*@
                <span>em </span>@Html.TextBoxFor(m => m.Localizacao, new { id = "localizacaoProfissional", name = "localizacaoProfissional", placeholder = "Localização (Cidade, Estado, Endereço etc)" }); @*<input type="text" id="localizacaoProfissional" name="localizacaoProfissional" placeholder="Localização (Cidade, Estado, Endereço etc)">*@
                <span>que atenda </span>@Html.TextBoxFor(m => m.TipoAtendimento, new { id = "home-tipo-atendimento", name = "home-tipo-atendimento", placeholder = "Tipo de Atedimento: Particular, Comvênios, Domiciliar" }); @*<input type="text" placeholder="Tipo de Atedimento: Particular, Comvênios, Domiciliar" id="home-tipo-atendimento" name="home-tipo-atendimento">*@

                <!-- dropdown -->
                <div class="input-drop" id="home-input-drop" style="display: none;">


                    <input type="checkbox" value="Particular" id="tipoParticular" name="tipoParticular">Particular<br>
                    <input type="checkbox" value="next" id="tipoConvenio" name="tipoConvenio">Convênio<input id="home-input-drop-convenio" type="text"><br>
                    <input type="checkbox" value="Domiciliar" id="tipoDomiciliar" name="tipoDomiciliar">Domiciliar<br>
                    <input type="checkbox" value="Local próprio" id="tipoLocal" name="tipoLocal">Local Próprio<br>
                </div>

                <div class="col-xs-12 busca3-content">
                    <input type="submit" id="home-input-button" value="Buscar"/>
                </div>

            </div>
        }

Thank you in advance.

Hugs.

  • You can edit your question and post the Model?

  • @Ciganomorrisonmendez I edited with the Model as requested. Thank you.

1 answer

1

I’d trade the boolean for a Enum:

public enum TipoAtendimento 
{
    Particular,
    Convenio,
    Domiciliar,
    LocalProprio
}

public class BuscarProfissionalModel
{
    public string NomeTipoConvenio { get; set; }
    public string Nome { get; set; }
    public string Localizacao { get; set; }
    public TipoAtendimento TipoAtendimento { get; set; }
}

View:

    @using (Html.BeginForm("Buscar", "BuscarProfissional"))
    {
        <div class="col-xs-12 busca3-content" id="busca3-content">
            <span>Buque por </span>@Html.TextBoxFor(m => m.Nome, new { id = "nomeProfissional", name = "nomeProfissional", placeholder = "Nome, Especialidade, Interesses" }) ;@*<input type="text" id="nomeProfissional" name="nomeProfissional" placeholder="Nome, Especialidade, Interesses">*@
            <span>em </span>@Html.TextBoxFor(m => m.Localizacao, new { id = "localizacaoProfissional", name = "localizacaoProfissional", placeholder = "Localização (Cidade, Estado, Endereço etc)" }); @*<input type="text" id="localizacaoProfissional" name="localizacaoProfissional" placeholder="Localização (Cidade, Estado, Endereço etc)">*@
            <span>que atenda </span>@Html.TextBoxFor(m => m.TipoAtendimento, new { id = "home-tipo-atendimento", name = "home-tipo-atendimento", placeholder = "Tipo de Atedimento: Particular, Comvênios, Domiciliar" }); @*<input type="text" placeholder="Tipo de Atedimento: Particular, Comvênios, Domiciliar" id="home-tipo-atendimento" name="home-tipo-atendimento">*@

            <div class="input-drop" id="home-input-drop" style="display: none;">
            @Html.RadioButtonFor(model => model.TipoAtendimento, TipoAtendimento.Particular)
            @Html.RadioButtonFor(model => model.TipoAtendimento, TipoAtendimento.Convenio)
            @Html.RadioButtonFor(model => model.TipoAtendimento, TipoAtendimento.Domiciliar)
            @Html.RadioButtonFor(model => model.TipoAtendimento, TipoAtendimento.LocalProprio)
            </div>

            <div class="col-xs-12 busca3-content">
                <input type="submit" id="home-input-button" value="Buscar"/>
            </div>

        </div>
    }

Browser other questions tagged

You are not signed in. Login or sign up in order to post.