基于下拉列表显示和隐藏 asp mvc 5

金成

我正在学习 asp.net mvc 5。

dropdownlistfor的工作完美,并根据其值显示正确的字段。但问题是当页面第一次加载时它显示所有字段..

问题是:我希望第一次加载页面时默认不显示任何内容。

我的 cshtml:

<div class="form-group">
                    <div class="col-md-10">
                        @Html.DropDownListFor(m => m.PaymentMethod, ViewBag.PayTypeList as List<SelectListItem>, new { @class = "btn btn-primary btn-lg dropdown-toggle", @id = "PaymentId" })
                        <div id="PaypalButton">
                            <br/>
                            <script src="https://www.paypalobjects.com/api/button.js?"
                                    data-merchant="braintree"
                                    data-id="paypal-button"
                                    data-button="checkout"
                                    data-color="gold"
                                    data-size="medium"
                                    data-shape="pill"
                                    data-button_disabled="true">
                            </script>
                            <!--data-button_type="paypal_submit"-->
                        </div>
                        <div id="EcheckForm">
                            <div class="form-group">
                                <div class="col-md-10">
                                    @Html.TextBoxFor(m => m.VecInsNum, new { @class = "form-control input-lg", placeholder = "Vehicle Isurance Number", required = "required", tabindex = 18 })
                                    @Html.ValidationMessageFor(m => m.VecInsNum, null, new { @class = "text-danger" })
                                </div>
                            </div>
                        </div>
                    </div>

和JS:

@section Scripts {
<script type="text/javascript">
    $(document).ready(function () {
        $('#PaymentId').change(function () {
            var value = $(this).val();
            if (value == '1') {
                $('#PaypalButton').show();
                $('#EcheckForm').hide();
            } else if (value == '2') {
                $('#PaypalButton').hide();
                $('#EcheckForm').show();
            } else {
                $('#PaypalButton').hide();
                $('#EcheckForm').hide();
            }
        });
    });

页面第一次加载时: 在此处输入图片说明

当我选择支付宝时: 在此处输入图片说明

当我选择电子支票时: 在此处输入图片说明

当我回到默认值时: 在此处输入图片说明

山本哲也

首先,创建一个包含隐藏方法的函数:

// hide all div options
function hideOnLoad() {
    $('#PaypalButton').hide();
    $('#EcheckForm').hide();
}

然后,调用上面的函数以div在第一次加载页面并且选择默认值时隐藏所有选项元素,如下所示:

$(document).ready(function () {
    hideOnLoad(); // add this line
    $('#PaymentId').change(function () {
        var value = $(this).val();
        if (value == '1') {
            $('#PaypalButton').show();
            $('#EcheckForm').hide();
        } else if (value == '2') {
            $('#PaypalButton').hide();
            $('#EcheckForm').show();
        } else {
            hideOnLoad();
        }
    });
});

简化示例:JSFiddle 演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

基于表值的asp.net mvc 5页显示/隐藏/访问

来自分类Dev

C# MVC 5 Razor:下拉列表显示小写值而不是大写值

来自分类Dev

ASP.NET MVC 5设置下拉列表的值

来自分类Dev

ASP.NET 5和MVC的目的

来自分类Dev

模型绑定和继承ASP MVC 5

来自分类Dev

如何使用dropdownlist change事件在asp.net mvc 5中隐藏和显示div

来自分类Dev

如何在MVC 5 EF 6中使用下拉列表显示与值不同的标签文本?

来自分类Dev

ASP.net MVC 5 Razor下拉框

来自分类Dev

如何使用Asp MVC 5使用基于Json的Web Api?

来自分类Dev

复杂列表子项的ASP.NET MVC 5编辑选项

来自分类Dev

ASP.NET MVC 5模型绑定列表为空

来自分类Dev

复杂列表子项的ASP.NET MVC 5编辑选项

来自分类Dev

ASP.NET MVC 5模型绑定列表为空

来自分类Dev

使用 Angular 2 在 Asp Mvc 5 中返回列表

来自分类Dev

Asp.Net MVC 5 WCF验证;<必需> <显示>

来自分类Dev

在ASP.NET MVC5中显示PageList

来自分类Dev

突出显示表中的更改(ASP / MVC5)

来自分类Dev

Iframe 未在 Asp .Net MVC5 中显示网站

来自分类Dev

Asp.net MVC 5,单击按钮时显示标签?

来自分类Dev

ASP MVC 5测试RedirectToAction

来自分类Dev

ASP.NET MVC 5中的DateCreated和DateModified

来自分类Dev

MVC 5和ASP.NET标识-实现混乱

来自分类Dev

ASP.NET MVC 5身份和Azure

来自分类Dev

ASP.NET MVC 5和Bootstrap 3

来自分类Dev

上传和查看文件ASP.NET MVC 5

来自分类Dev

实体框架7和ASP MVC 5-简单的任务

来自分类Dev

上传和查看文件ASP.NET MVC 5

来自分类Dev

继承的类和剃刀 asp.net mvc 5

来自分类Dev

ASP .NET MVC 5 根据角色和/或状态编辑表单