jquery remote验证成功调用什么方法

2025-04-28 16:22:04
推荐回答(2个)
回答1:

环境技术:

Vs2012 ,Asp.Net MVC4.0 , Razor, Jquery 插件 Jquery Vaildation

Jquery Vaildation插件主要是对 页面的表单进行验证

常用的

(1)required:true 必输字段
(2)remote:"@Url.action("actionName","controllerName")" 使用ajax方法调用actionName验证输入值
(3)email:true 必须输入正确格式的电子邮件
(4)url:true 必须输入正确格式的网址
(5)date:true 必须输入正确格式的日期 日期校验ie6出错,慎用
(6)dateISO:true 必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
(7)number:true 必须输入合法的数字(负数,小数)
(8)digits:true 必须输入整数
(9)creditcard: 必须输入合法的信用卡号
(10)equalTo:"#field" 输入值必须和#field相同
(11)accept: 输入拥有合法后缀名的字符串(上传文件的后缀)
(12)maxlength:5 输入长度最多是5的字符串(汉字算一个字符)
(13)minlength:10 输入长度最小是10的字符串(汉字算一个字符)
(14)rangelength:[5,10] 输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
(15)range:[5,10] 输入值必须介于 5 和 10 之间
(16)max:5 输入值不能大于5
(17)min:10 输入值不能小于10

在这里详细说说 remote,并将校验规则写到js代码中,下面请看实例,然后总结:

1.页面Razor引擎 (注意淡黄色代码)





@using Omega.DataModels
@model RegionQuota

























Region Name: @Html.HiddenFor(q => q.RegionID)
Year:
  
@if (Model.RegionQuotaID == 0)
{
@Html.DropDownListFor(q => Model.Year, Omega.ORION.DropdownList.DDL_Years())
}
else
{
@Html.DisplayFor(q => Model.Year)
}
Month:   
@if (Model.RegionQuotaID == 0)
{
@Html.DropDownListFor(q => Model.Month, Omega.ORION.DropdownList.DDL_Months())
}
else
{
@Html.DisplayFor(q => Model.Month)
}
Monthly Adjusted Income Quota:   $ @Html.TextBoxFor(q => Model.AdjustedIncome)
Adjusted Income Quota Weight:    @Html.TextBoxFor(q => Model.AdjustedIncomeWeight) %


@Html.HiddenFor(q => Model.RegionQuotaID)








2. RegionController 里面对应的 IsExitQuota 方法

//这里需要注意的是,返回值是JsonResult(因为页面remote里面设置的是json数据格式)

public JsonResult IsExitQuota(int RegionID, int Year, int Month)
{
RegionBLL regionBll = new RegionBLL(EFConnectionString);
return Json(regionBll.IsExitQuotaByRegionIDYearMonth(RegionID, Year, Month), JsonRequestBehavior.AllowGet);
}

本实例需求是这样的: 当添加一个RegionQuota时候,一条记录里 不允许 有相同的 Year,相同的Month,相同的RegionID

RegionID为隐藏的值域,Year,Month,分别为可选的年月,当Month失去焦点时,需要异步的去数据库查询,是否存在 RegionID,Year,Month这样的记录,如果存在,就告诉浏览器,不能让表单提交,如果不存在则提交表单

3. Model类(仅供参照)

namespace Omega.DataModels
{
///
/// 地区配额
///

public class RegionQuota
{
#region Navigation Properties
///
/// 区域配额ID
///

public virtual int RegionQuotaID { get; set; }

///
/// 区域ID
///

[Required]
public virtual int RegionID { get; set; }
///
/// 调整后的收入
///

[Range(0.00, (double)decimal.MaxValue)]
public virtual Nullable AdjustedIncome { get; set; }

///
/// 调整后的收入份额
///

public virtual Nullable AdjustedIncomeWeight { get; set; }

///
/// 年
///

public virtual Nullable Year { get; set; }

///
/// 月
///

public virtual Nullable Month { get; set; }
#endregion

#region Navigation Properties

///
/// 地区
///

public virtual Region Region { get; set; }

#endregion

}
}

回答2:

jQuery Validation插件提供了一种remote方式来实现参数:
写法如下:





jQuery Validation便会请求“/account/verify?userName=jeffz”这样的URL来获取true/false,如果返回true,就是验证成功,否则就是失败。