ASP.NET MVC注册表根据下拉列表选择进行更改

时间:2016-12-05 19:34:34

标签: c# asp.net-mvc

我正在尝试实施根据@Html.DropDownListFor()选项更改的注册表单。例如,下拉列表包含多个选项,例如:

  • 管理
  • 学生

如果我选择管理员,注册页面将显示管理员注册表格,选择学生将有视图显示学生注册表格。按下“提交”按钮,所选注册表单中的数据将发布到控制器中的POST方法。

我该如何实现?我真的需要使用JavaScript吗?

更新

我已按照以下代码完成了该视图并使用了@Html.BeginForm()& @Html.AntiForgeryToken()

     @using (Html.BeginForm("Register", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
    {
        @Html.AntiForgeryToken()

    <div class="container" style="width:40%; margin-top:3%">
    -- the button --
    <a href="#" class="btn btn-primary" data-toggle="modal" data-target="#AdminModal">Register Admin Account</a>

    <div class="modal fade" id="AdminModal" style="width:auto">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <a href="#" class="close" data-dismiss="modal">&times;</a>
                    <h3 class="modal-title" >Admin Modal</h3>
                </div>
                <div class="modal-body">
                    <form id="AdminForm">
    -- with other textfields ---
    -- And DropDownList for selecting User role --

                    </form>
                </div>

                <div class="modal-footer">
                    <a href="#" class="btn btn-default" data-dismiss="modal">Cancel</a>
                    <input type="reset" value="Submit" class="btn btn-success" id="btnSubmit" />
                </div>
            </div>
        </div>
    </div>
</div>
    }

第二个div,与上面的代码段相同,使用dialog form中包含的div。 这意味着在一个Html.BeginForm()中,我有很多提交 button

如何在点击提交按钮时选择要提交的表单,还可以选择POST进行验证?

任何方法都会非常感激。谢谢!

1 个答案:

答案 0 :(得分:0)

我认为你最好的选择是研究jQuery。它可以让你编写像

这样的代码
$("#drop").change(function () {
    // operations to update form.
});

如果您希望根据用户输入填充任何动态生成的控件,您可能需要查看jQuery AJAX。

jQuery确实简化了许多需要用vanilla JavaScript完成的工作。

相关问题