售后服务当前位置:星鸿娱乐 > 售后服务 > >

Mvc提交表单的四种方法全程详解

  

[mvc提交表单]Mvc提交表单的四种方法全程详解

  

一,MVC HtmlHelper方法  

  

1.

  

  
  
  Html.BeginForm(actionName,controllerName,method,htmlAttributes){}
  
  

2.

  

  
  
  BeginRouteForm 方法 (HtmlHelper, String, Object, FormMethod)
  
  

二,传统Form表单Aciton属性提交  
  
  

  

三,Jquery+Ajax 提交表单  
  
  

  

四,MVC Controller控制器和表单参数传递  
  

  

MVC HtmlHelper方法  
  

  

一,Html.BeginForm(actionName,controllerName,method,htmlAttributes){}  
  

  

注:所有要提交的内容包括按钮都必须在{ }内  
  

  

参数  

  

htmlHelper类型:System.Web.Mvc.HtmlHelper  

  

此方法扩展的 HTML 帮助器实例。actionName类型:System.String  

  

操作方法的名称。controllerName类型:System.String  

  

控制器的名称。routeValues类型:System.Object  

  

一个包含路由参数的对象。 通过检查对象的属性,利用反射检索参数。 此对象通常是使用对象初始值设定项语法创建的。method类型:System.Web.Mvc.FormMethod  
  用于处理窗体的 HTTP 方法(GET 或 POST)。htmlAttributes类型:System.Object  

  

一个对象,其中包含要为该元素设置的 HTML 特性。

  

  

返回值  

  

类型:System.Web.Mvc.Html.MvcForm  

  

开始标记。

  

  

用法说明  
  

  

在 Visual Basic 和 C# 中,您可以对 HtmlHelper 类型的任何对象将此方法作为实例方法调用。在您使用实例方法语法调用此方法时,将忽略第一个参数  
  

  

Html.BeginForm 方法示例  
  

  

MVC View代码  
  

  
  
  

在线申请

  @using (Html.BeginForm("Apply", "Star", FormMethod.Post, new {@class="MyForm"}))  {  
                                            
达人类型  @Html.DropDownListFor(m => m.StarModel.TypeID, Model.DropList, new { id = "type", @class = "my-" })  
首页达人照  
  +上传照片    
  
  @Html.HiddenFor(m => m.StarModel.UserGravatar, new { id = "SXtPhoto"星鸿娱乐平台 })    
自荐理由  @Html.TextAreaFor(m => m.StarModel.ApplyReason, new { id = "tDesc" })  
    
  
  }
  
  

二,BeginRouteForm 方法 (HtmlHelper, String, Object, FormMethod)  
  

  

参数  

  

htmlHelper类型:System.Web.Mvc.HtmlHelper  

  

此方法扩展的 HTML 帮助程序实例。

  

  

routeName类型:System.String  

  

用于获取窗体发布 URL 的路由的名称。

  

  

routeValues类型:System.Object  

  

一个包含路由参数的对象。 通过检查对象的属性,利用反射检索参数。 此对象通常是使用对象初始值设定项语法创建的。

  
  method类型:System.Web.Mvc.FormMethod  

  

用于处理窗体的 HTTP 方法(GET 或 POST)。

  

  

返回值  

  

类型:System.Web.Mvc.Html.MvcForm  

  

一个开始 标记。

  
  

  

使用说明  
  

  

在 Visual Basic 和 C# 中,可以在 HtmlHelper 类型的任何对象上将此方法作为实例方法来调用。当使用实例方法语法调用此方法时,请省略第一个参数。

  
  

  

BeginRouteForm示例  
  

  
  
   
  
  

传统Form表单Aciton属性提交  
  

  

直接利用html表单的Aciton属性进行提交。

  
  

  

方法示例  
  

  
  
    
        
  
  
  

Jquery+Ajax 提交表单  
  
  

  

方法示例  
  

  

View 部分  
  

  
  
  
  发布  
  
  

Jquery和Ajax部分  
  

  
  
  //发布长微博  $("#postWeibo").click(function () {  var blogID = $("#hfID").val();  var title = $("#title").val();  var imgurl = $("#previewImgHide").val();  var des = editor.getContent();  if (title == "") {  ShowFailTip('微博标题不能为空!');  return;  }  if (title.length >= 40) {  ShowFailTip("微博标题不能超出40个字!");  return;  }  //检查是否数字  if (isNaN(fee)) {  ShowFailTip("不能包含文本必须是数值!");  return;  }  if (ContainsDisWords(title + des)) {  ShowFailTip('您输入的内容含有禁用词,请重新输入!');  return;  }  $.ajax({  url: "/fx" + $Maticsoft.BasePath + "Blog/AjaxUpdate",  type: 'POST',  async: false,  dataType: 'html',  // timeout: 10000,  data: { Title: title, CityID: city, Fee: fee, CategoryID: category, Days: days, Tag: tag, startDate: startdate, endDate: enddate, ImgUrl: imgurl, Des: des, BlogID: blogID }, //  success: function (resultData) {  $(".dialogDiv").hide();  if (resultData == "No") {  ShowFailTip("操作失败,请您重试!");  } else if (resultData == "AA") {  $.jBox.tip('管理员不能操作', 'error');  } else {  var data = $(resultData);  }  }  });  }); 
  
  

MVC Controller控制器和表单参数传递  
  

  

1.普通参数  
  

  

HTML标签name 和参数名一样。

  
  

  
  
  public ActionResult AskForm(string txtTitle, string txtEditor, string dplBDTType, string selType, string txtYZM)  {  }
  
  

2.实体传参  
  

  

HTML标签name 属性和Model属性保持一致  
  

  
  
  [HttpPost]  public ActionResult Apply(ViewModel.SNS.Star model)  {  //逻辑  }
  
  

4.表单集合传参  
  

  
  
  [HttpPost]  public ActionResult Apply(FormCollection Form)  {  //逻辑  }
  
  

  

(责任编辑:admin)

上一篇:星鸿娱乐:jquery选择器使用详解

下一篇:javascript客户端遍历控件与获取父容器对象示例代

推荐内容

客户服务热线

400 888 8932

在线客服