使用jQuery访问选择标签元素值

时间:2019-03-30 04:56:07

标签: jquery asp.net-core razor tag-helpers

我用三个值创建了一个枚举。 在创建视图文件中,枚举显示为Select标记。

我想根据Select标记中所选元素的值隐藏和显示(切换)特定字段。

当我运行代码并更改所选项目时,(SlideDown)函数将自动执行。但是我希望该功能仅在所选项目的值等于2时才执行。(当我更改时不这样做)

这是创建视图文件中的“选择”标签部分:

    <div class="form-group">
        <label asp-for="Certificate" class="control-label"></label>
        <select id="crfct" asp-for="Certificate" asp-items="Html.GetEnumSelectList<Certificate>()" class="form-control"></select>
        <span asp-validation-for="Certificate" class="text-danger"></span>
    </div>
    <div class="form-group" id="crfctcost">
        <label asp-for="CertificateCost" class="control-label"></label>
        <input asp-for="CertificateCost" class="form-control" />
        <span asp-validation-for="CertificateCost" class="text-danger"></span>
    </div>

和jQuery代码:

 <script>
        $(document).ready(function () {
            $("#crfctcost").hide();
            $("#crfct").change(function () {
                var selectedCertificate = $('#crfct').find(":selected").val();
                if (selectedCertificate == "2"); {
                    $("#crfctcost").slideDown();
                }
            });
        });
    </script>

1 个答案:

答案 0 :(得分:2)

希望这会有所帮助。您添加了“;”如果

 $(document).ready(function () {
                $("#crfctcost").hide();
                $(document).on('change','#crfct',function (e) {
                    var selectedCertificate = $(this).val();
                    if (selectedCertificate == 2){
                        $("#crfctcost").slideDown();
                    }
                });
            });