标签: unobtrusive-validation

将jQuery验证器规则添加到ASP中动态创建的元素

我在MVC3项目的页面上有一些动态插入的表单字段.通常我们会添加jQuery验证服务器端,但在这种情况下我们不能(UI中的多个字段生成一个隐藏字段的值 - 这就是提交的内容.我们无法验证隐藏字段,所以我们必须为用户可以看到的字段添加仅UI验证)

将字段动态添加到页面后,我在容器上运行以下代码:

$container.find(".date").rules("add", {
    required: true,
    messages: {
        required: "The date is required"
    }
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用!奇怪的是,禁用上面的代码,创建动态元素,然后在浏览器JS控制台中运行代码,但只显示默认验证消息.

我不知所措.有任何想法吗?

我正在使用jQuery Validation 1.9.0和不引人注目的插件

asp.net jquery jquery-validate unobtrusive-validation

28
推荐指数
2
解决办法
4万
查看次数

哪里可以在不使用NuGet的情况下下载Microsoft jQuery Unobtrusive Validation

我想下载最新版本的Microsoft jQuery Unobtrusive Validation,但是我不喜欢使用NuGet,因为我无法告诉它在我的项目结构中安装软件包的位置.

Microsoft是否将这些文件托管在我可以直接访问的位置?

nuget unobtrusive-validation

27
推荐指数
3
解决办法
3万
查看次数

将错误消息添加到@ Html.ValidationSummary

我正在使用标准的MVC3 Razor视图和不显眼的Javascript验证,@Html.ValidationSummary用于在表单的顶部显示它们.如果标准验证(类似的东西[Required])通过,我会运行一些非常自定义的客户端验证,当用户点击提交按钮时会激活该验证.(验证查看了许多表单元素,以确保已经检查了它们的正确集合等,因此它不像仅为单个字段创建新的自定义验证器那么简单).

我希望我在那里构建的可能错误显示在ValidationSummary列表中,但我无法弄清楚如何让错误消息出现在那里.

unobtrusive-validation asp.net-mvc-3

26
推荐指数
2
解决办法
3万
查看次数

将Twitter Bootstrap与Asp.net MVC 3表单集成

我正在使用Asp.net MVC 3和Twitter Bootstrap.我想要的是整合它们.对我来说最大的问题是形式.我正在使用它HtmlHelper并且它是一个问题,当涉及到验证时,我希望它生成这样的HTML:

<div class="control-group error">
   <label for="field" class="control-label">OMG this label is so awesome: </label>
   <div class="controls">
      <input type="text" name="field" id="field" value="yeah" />
      <span class="help-inline">Eventually some error :C</span>
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是我的HtmlHelper代码:

@Html.LabelFor(x => x.Field)
@Html.EditorFor(x => x.Field)
@Html.ValidationMessagesFor(x => x.Field)
Run Code Online (Sandbox Code Playgroud)

问题是我希望只有在这个字段上确实存在错误时才设置最外层div的类错误.其他问题是我不知道如何强制使用span标记来处理错误.我可以在HtmlHelper中编写我的方法,但它会让我重新实现几乎所有的功能LabelFor,EditorFor并且ValidationMessageFor.有更简单的方法吗?那不引人注目的验证怎么样?

forms asp.net unobtrusive-validation asp.net-mvc-3 twitter-bootstrap

25
推荐指数
3
解决办法
2万
查看次数

MVC不显眼的验证复选框不起作用

我试图在提到执行代码这篇文章.换句话说,我正试图在条款和条件复选框上实现不显眼的验证.如果用户未选中该复选框,则应将输入标记为无效.

这是服务器端Validator代码,我添加了:

/// <summary>
/// Validation attribute that demands that a boolean value must be true.
/// </summary>
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = false)]
public class MustBeTrueAttribute : ValidationAttribute
{
    public override bool IsValid(object value)
    {
        return value != null && value is bool && (bool)value;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是模型

[MustBeTrue(ErrorMessage = "You must accept the terms and conditions")]
[DisplayName("Accept terms and conditions")]
public bool AcceptsTerms { get; set; }
Run Code Online (Sandbox Code Playgroud)

这是我的看法:

@Html.EditorFor(x => x.AcceptTermsAndConditions)
@Html.LabelFor(x => x.AcceptTermsAndConditions)
@Html.ValidationMessageFor(x …
Run Code Online (Sandbox Code Playgroud)

unobtrusive-javascript razor unobtrusive-validation asp.net-mvc-3

23
推荐指数
3
解决办法
2万
查看次数

mvc4 url​​验证

在试图找到两天的答案后,我在这里写这个问题.

基本上这是发生了什么.

我在viewmodel中有一个属性,如下所示

[Required(ErrorMessage = "Required Field")]
[Url(ErrorMessage="Please enter a valid url")]
[DisplayName("Website")]
public string web { get; set; }
Run Code Online (Sandbox Code Playgroud)

在视图中,我有这个

@Html.EditorFor(model => model.web, new { AutoCompleteType = "Disabled", autocomplete = "off" })
Run Code Online (Sandbox Code Playgroud)

现在的问题在于如何在客户端验证此字段的输入文本.该字段必须始终具有协议前缀,否则将变为无效.

我能解决这个问题的最佳方法是什么?

非常感谢

unobtrusive-validation asp.net-mvc-4 jquery-validation-engine

23
推荐指数
1
解决办法
3万
查看次数

添加"Microsoft.jQuery.Unobtrusive.Validation"包请求jQuery 1.4.1?

在其中一个项目中,我需要重新安装jQuery NuGet包(一个MVC解决方案).

还有一个"Microsoft.jQuery.Unobtrusive.Validation",我应该在删除jQuery包之前卸载它.

现在我尝试(重新)安装jQuery包,以及之前删除的所有依赖包."Microsoft.jQuery.Unobtrusive.Validation"包打破说:

试图解决依赖'jQuery(≥1.8)'.
试图解决依赖'jQuery.Validation(≥1.8)'.
试图解决依赖'jQuery(≥1.3.2&&≤1.6)'.
将"jQuery 1.8.0"更新为"jQuery 1.4.1"失败.
无法找到与"jQuery 1.4.1"兼容的"Microsoft.jQuery.Unobtrusive.Validation"版本.

是吗?我需要使用最新的jQuery(2.0.xx)!

我应该此话的是,类似的"Microsoft.jQuery.Unobtrusive.阿贾克斯 "包没有这个"错误".安装没有问题.

PS.现在我尝试安装(非Microsoft)jQuery.Validation ...

这是错误日志:

试图解决依赖'Microsoft.jQuery.Unobtrusive.Validation(≥2.0.20613.0)'.
试图解决依赖'jQuery.Validation(≥1.8&& <2.0)'.
试图解决依赖'jQuery(≥1.3.2&&≤1.6)'.
安装'jQuery 1.4.1'.成功安装了'jQuery 1.4.1'.
安装'jQuery.Validation 1.8'.
成功安装了'jQuery.Validation 1.8'.
安装'Microsoft.jQuery.Unobtrusive.Validation 2.0.20710.0'.
成功安装了"Microsoft.jQuery.Unobtrusive.Validation 2.0.20710.0".
安装'jQuery.Validation.Unobtrusive 2.0.20710.0'.
成功安装'jQuery.Validation.Unobtrusive 2.0.20710.0'.
安装失败.
回滚......将
'jQuery 1.9.0'更新为'jQuery 1.4.1'失败了.无法找到与'jQuery 1.4.1'兼容的'bootstrap,jQuery.BlockUI,Microsoft.jQuery.Unobtrusive.Ajax'版本.

.net jquery visual-studio nuget unobtrusive-validation

23
推荐指数
2
解决办法
6678
查看次数

在ASP.NET MVC 3中,AllowEmptyString = true的RequiredAttribute不显眼的验证

如果我[Required(AllowEmptyStrings = true)]在视图模型中有声明,则始终在空输入上触发验证.我发现这篇文章解释了它为什么会发生.你知道是否有修复方法吗?如果没有,你如何处理它?

validation unobtrusive-javascript jquery-validate unobtrusive-validation asp.net-mvc-3

21
推荐指数
2
解决办法
3万
查看次数

MVC:如何在隐藏字段上启用客户端验证

@Scripts

 <script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")"></script>
  <script src="@Url.Content("~/Scripts/jquery.validate.js")"></script>
  <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")"></script>
Run Code Online (Sandbox Code Playgroud)

@视图

@using (Html.BeginForm("TestModelState", "RandD", FormMethod.Post, new {id="form123" }))
{ 
    @Html.TextBoxFor(x => x.htmlText, new { style="display:none"})<br />
    @Html.ValidationMessageFor(x => x.htmlText)
    <div>
      @Html.TextBoxFor(x => x.Uprop1)<br />
      @Html.ValidationMessageFor(x => x.Uprop1)
    </div>
    <input type="submit" value-="Submit" onclick="abc()" />
}
Run Code Online (Sandbox Code Playgroud)

我尝试过什么

  1. 更换忽略:":隐藏",忽略:"",里面validate.js
  2. var validateMeta = $('#form123').validate(); validateMeta.settings.ignore ="";

  3. $.validator.setDefaults({ignore: ""});

  4. $.validator.setDefaults({ ignore: [] });

asp.net-mvc jquery jquery-validate unobtrusive-validation asp.net-mvc-4

21
推荐指数
4
解决办法
2万
查看次数

在文本框上手动设置不显眼的验证错误

我正在做类似于远程验证的事情,除了我已经通过jquery手动拨打我的电话并设置我必须设置的任何内容.

现在我的问题是,如果我想告诉验证器特定文本框无效(并阻止页面提交,突出显示文本框等).我怎么从代码中做到这一点?

@Html.LabelFor(m => Model.Slug)
@Html.TextBoxFor(m => Model.Slug)
<span id="UrlMsg" class="field-validation-error" style="display: none;"></span>

 if (error) {
        $('#UrlMsg').html('This name is already in use.').fadeIn('fast');
        //what should I do here for the rest of the validation?
 }
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc jquery jquery-validate unobtrusive-validation asp.net-mvc-3

20
推荐指数
2
解决办法
2万
查看次数