Состояние переключателя начальной загрузки ASP.NET MVC Core2.2 - PullRequest
0 голосов
/ 18 октября 2019

Я борюсь с простой проблемой: мне нужно получить состояние кнопки (которая действует как радио-кнопка). Кнопки выглядят так: 1 : я использую сценарии для изменения состояния кнопок (путем изменения класса кнопки с / на вторичный / основной). Я не могу получить состояние кнопок, когда на этой странице нажата кнопка «Сохранить» (с последующим действием).

Кнопки создаются с помощью:

<div class="form-group row">
    <label class="col-md-2 col-form-label col-form-label-lg">_Gender</label>
    <div class="col-md-4 btn-group">
        @{string btnClass = "btn-secondary"; }
        @if (Model.gender == GenderType.MALE)
        {
            btnClass = "btn-primary";
        }
        <input type="button" class="@("btn btn-lg " + btnClass)"
               role="button" value="_Male" id="btnMale" />
        @{btnClass = "btn-secondary"; }
        @if (Model.gender == GenderType.FEMALE)
        {
            btnClass = "btn-primary";
        }
        <input type="button" class="@("btn btn-lg " + btnClass)"
               role="button" value="_Female" id="btnFemale" />
        @{btnClass = "btn-secondary"; }
        @if (Model.gender == GenderType.UNKNOWN)
        {
            btnClass = "btn-primary";
        }
        <input type="button" class="@("btn btn-lg " + btnClass)"
               role="button" value="_Unknown" id="btnUnknown" />
    </div>
</div>

Сценарий на этой странице:

@section scripts
{
    <script>
        if ($("#btnMale").click(function () {
                $("#btnMale").removeClass("btn-secondary btn-primary");
                $("#btnFemale").removeClass("btn-secondary btn-primary");
                $("#btnUnknown").removeClass("btn-secondary btn-primary");
                $("#btnMale").addClass("btn-primary");
                $("#btnFemale").addClass("btn-secondary");
                $("#btnUnknown").addClass("btn-secondary");
                $(@Model.genderButton).val = "Male";
            }));
        if ($("#btnFemale").click(function () {
                $("#btnMale").removeClass("btn-secondary btn-primary");
                $("#btnFemale").removeClass("btn-secondary btn-primary");
                $("#btnUnknown").removeClass("btn-secondary btn-primary");
                $("#btnMale").addClass("btn-secondary");
                $("#btnFemale").addClass("btn-primary");
                $("#btnUnknown").addClass("btn-secondary");
                $(@Model.genderButton).val = "Female";
            }));
        if ($("#btnUnknown").click(function () {
                $("#btnMale").removeClass("btn-secondary btn-primary");
                $("#btnFemale").removeClass("btn-secondary btn-primary");
                $("#btnUnknown").removeClass("btn-secondary btn-primary");
                $("#btnMale").addClass("btn-secondary");
                $("#btnFemale").addClass("btn-secondary");
                $("#btnUnknown").addClass("btn-primary");
                $(@Model.genderButton).val = "Unknown";
            }));

    </script>
}

Model.genderButton - это строка. Но в почтовом индексе C # пол гендерной кнопки всегда равен нулю. Другие значения в модели работают как ожидалось. Я предполагаю, что $ (@ Model.genderButton) .val = "Неизвестно";в скрипте неверно.

Так, как я могу заполнить гендерную кнопку, чтобы она была доступна в моем почтовом индексе?

Спасибо!

...