Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# harvest Selected插件无法显示asp.net mvc下拉列表的验证消息_C#_Jquery_Asp.net Mvc_Html.dropdownlistfor - Fatal编程技术网

C# harvest Selected插件无法显示asp.net mvc下拉列表的验证消息

C# harvest Selected插件无法显示asp.net mvc下拉列表的验证消息,c#,jquery,asp.net-mvc,html.dropdownlistfor,C#,Jquery,Asp.net Mvc,Html.dropdownlistfor,将下拉列表更改为所选下拉列表后,我无法获取验证消息。可以找到所选的插件 Jquery代码 $(“#SelectedPropertyGroup”).selected(); 用户界面代码 @DropDownListFor(x=>x.SelectedGroup,Model.Groups,“selectgroup”,新建 { @onchange=“javascript:ValidateApplicationSelection(这个‘组’);”, @占位符=“请选择一种产品” }) @Html.Valid

将下拉列表更改为所选下拉列表后,我无法获取验证消息。可以找到所选的插件

Jquery代码
$(“#SelectedPropertyGroup”).selected();
用户界面代码
@DropDownListFor(x=>x.SelectedGroup,Model.Groups,“selectgroup”,新建
{
@onchange=“javascript:ValidateApplicationSelection(这个‘组’);”,
@占位符=“请选择一种产品”
})
@Html.ValidationMessageFor(model=>model.SelectedGroup,“,new{id=“valGroup”})
模型代码
[必需(ErrorMessage=“选择组”)]
[显示名称(“组:”)]
公共字符串SelectedGroup{get;set;}

客户端验证默认情况下会忽略隐藏字段--selected在应用“真实”select元素时会隐藏它的魔力。您可以更改验证程序默认值,如下所示:

$.validator.setDefaults({ ignore: ":hidden:not(select)" });
这将设置验证器忽略任何不是select元素的隐藏字段


所选的is
“:hidden”

与此无关。更糟糕的情况是,它可能不会将值传递给原始的select元素,但这会导致错误,而不会抑制一个值的显示。检查代码的其余部分。特别是,如果有错误,您实际上是在将验证消息设置为“a”,因此您可能只是缺少了页面上的
a
。很抱歉输入错误。我没有a,它是空白的。好了,给你。第二个参数覆盖默认错误消息。实际上,您已经告诉它在出现错误时总是打印一个空白字符串。如何在这段代码中定义验证器?我应该在document.ready上尝试这段代码吗?应该在加载jQuery非干扰性验证包之后定义这段代码。它将自动包含在ASP.MVC脚手架编辑/创建视图中。捆绑包是~/bundles/jqueryval。抱歉,还有一个问题。我找不到你告诉我的文件。请详细说明文件的位置好吗。
$.validator.setDefaults({ ignore: ":hidden:not(select)" });