MVC中处理表单提交的方式(Ajax+Jquery)

MVC中处理表单有很多种方法,这里说到第一种方式:Ajax+Jquery

先看下表单:

<form class="row form-body form-horizontal m-t">

    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">订单编号:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.OrderID</p>
            </div>
        </div>
    </div>

    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">订单类型:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@{ var typeName = Model.OrderType == 1 ? "红包" : "抽奖"; }@typeName</p>
            </div>
        </div>
    </div>

    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">用户昵称:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.UserName</p>
            </div>
        </div>
    </div>

    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">注册手机:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.RegMobile</p>
            </div>
        </div>
    </div>
    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">领奖手机:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.OrderMobile</p>
            </div>
        </div>
    </div>
    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">兑换金额:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.Moneys</p>
            </div>
        </div>
    </div>

    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">创建时间:</label>
            <div class="col-sm-4">
                <p class="form-control-static">@Model.CreateTime.ToString("yyyy-MM-dd")</p>
            </div>
        </div>

    </div>
    <div class="col-md-6">
        <div class="form-group">
            <label class="col-sm-3 control-label">订单状态:</label>
            <div class="col-sm-4">

                @Html.DropDownList("Flag", BaseHelper.OrderStatus, new {@class = "form-control"})
            </div>
        </div>
    </div>

    <div class="col-md-7">
        <div class="form-group" style="margin-left: -40px;">

            <label class="col-sm-3 control-label">处理结果:</label>
            <div class="col-sm-5">

                @Html.TextAreaFor(t => t.Results, new { @class = "form-control", style = "margin: 0px -392.984px 0px 0px; width: 598px; height: 105px;", placeholder = "请输入备注", maxlength=100 })

            </div>
        </div>
    </div>

    <div class="col-sm-12 col-sm-offset-8">
        <div class="hr-line-dashed"></div>
        @{
            if (@Model.Flag!=1)
            {
   <button class="btn btn-primary" type="submit" id="btnSave1">保存内容</button>
            }
        }

        <button class="btn btn-primary" type="button" onclick="closeWin()">关闭</button>
    </div>
    @Html.HiddenFor(t=>t.OrderID)
</form>

可以看到有些字段使用HtmlHelperl扩展方法的实现的。下一步通过Jquery来实现表单提交:

  $(function () {
        $("#btnSave1").on(‘click‘, submitData);
    });

    function submitData() {

        var flag = document.getElementById("Flag").value;
        var results = document.getElementById("Results").value;
        var id = document.getElementById("OrderID").value;
        var data = { flag: flag, Results: results, OrderID: id }
        $.post("/Manage/Orders/Edit",data, function (result) {
            if (result.resultCode == 1) {
                layer.alert(‘修改成功‘, function () {
                    //do something

                    closeWin();
                });

            } else {
                alert(result.info);
            }
        }, "json");
    }

上面的js代码很简单,获取每个字段的值,拼接成json对象,通过Ajax方式提交到后台。后台的代码也比较简单,就不贴了。

时间: 2024-08-06 05:28:54

MVC中处理表单提交的方式(Ajax+Jquery)的相关文章

asp.net.mvc 中form表单提交控制器的2种方法和控制器接收页面提交数据的4种方法

MVC中表单form是怎样提交? 控制器Controller是怎样接收的? 1..cshtml 页面form提交 (1)普通方式的的提交 (2)特殊方式提交 2.控制器处理表单数据的四种方法 方法1:使用传统的Request请求数据 方法2:Action参数名与表单元素name值一一对应 方法3:从MVC封装的FormCollection容器中读取 方法4:使用实体作为Action参数传入,前提是提交的表单元素名称与实体属性名称一一对应 控制器源码 using MvcStudy.Models;u

mvc中form表单提交的几种形式

第一种方式:submit 按钮 提交 <form action="MyDemand" method="post"> <span>关键字:</span> <input name="keywords" type="text" value="@keywords" /> <input type="submit" value="搜索&

MVC中Form表单的提交

Form表单是数据提交的一种,在MVC中Form表单提交到服务器中地址,接受Form表单的方式有一下几种: 1.采用实体Model类型提交,Form表单中的Input标签name要和Model对应的属性保持一致,接受Form表单的服务器端就可以直接以实体的方式存储,使用方式如下: Form表单: <form action="/Employee/SaveEmployee" method="post"> <table> <tr> &l

ajaxSubmit 页面生成的html 中含有表单提交表单方式

$("#form_title").ajaxSubmit({ //页面生成的html 中含有表单提交表单方式 dataType: "json", success : function(obj){ lock_flag = false; if(obj.errno == 0){ lock_flag = false; layer.msg(obj.errdesc); setTimeout(function() { window.location.reload(); },2000

在Action中获取表单提交数据

-----------------siwuxie095 在 Action 中获取表单提交数据 1.之前的 Web 阶段是提交表单到 Servlet,在其中使用 Request 对象 的方法获取数据 2.Struts2 是提交表单到 Action,但 Action 没有 Request 对象,不能 直接使用 Request 对象获取数据 「可以间接使用 Request 对象获取数据」 3.Action 获取表单提交数据主要有三种方式: (1)使用 ActionContext 类 (2)使用 Ser

客户端表单提交数据方式与服务器获取数据

表单提交数据的两种方式 表单form的提交有两种方式,一种是get的方法,通过超级链接后面的参数提交过来,一种是post ,通过Form表单提交过来. post方式: <form id="form1" name="form1" method="post" action="login.aspx"> <table width="501" border="0" align=&

表单提交(五)——jquery方式

用.submit( handler )方式提交,不需要用onsubmit,直接在handler进行表单验证. 为了阻止Enter提交表单,当按下Enter键时阻止表单默认行为. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://code.jquery.com/jquery-latest.js"></scri

extjs中form表单提交成功、失败的响应信息

类Ext.form.Action.Submit 处理表单Form数据和返回的response对象的类. 该类的实例仅在表单Form{@link Ext.form.BasicForm#submit 提交}的时候创建. 返回的数据包必须包含一个 boolean 类型的success属性,还有可选地,一个含有无效字段的错误信息的属性 A response packet may contain: ·        success property : Boolean - required. ·     

form表单提交数据编码方式和tomcat接受数据解码方式的思考

http://blog.sina.com.cn/s/blog_95c8f1ac010198j2.html ******************************************************* form有2中方法把数据提交给服务器,get和post,分别说下吧. (一)get提交 1.首先说下客户端(浏览器)的form表单用get方法是如何将数据编码后提交给服务器端的吧. 对于get方法来说,都是把数据串联在请求的url后面作为参数,如:http://localhost: