Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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
Javascript 在部分视图MVC5.2中开始表单客户端验证_Javascript_Jquery_Ajax_Asp.net Mvc_Unobtrusive Validation - Fatal编程技术网

Javascript 在部分视图MVC5.2中开始表单客户端验证

Javascript 在部分视图MVC5.2中开始表单客户端验证,javascript,jquery,ajax,asp.net-mvc,unobtrusive-validation,Javascript,Jquery,Ajax,Asp.net Mvc,Unobtrusive Validation,Index.cshtml: <div class="search-ctn"> @{ Html.RenderAction(MVC.Home.Search()); } </div> MVC.Home.Search操作: [HttpPost, ValidateAntiForgeryToken] public virtual PartialViewResult Search(SearchVM partnerSearch) { //

Index.cshtml:

<div class="search-ctn">
    @{ Html.RenderAction(MVC.Home.Search()); }
</div>
MVC.Home.Search操作:

    [HttpPost, ValidateAntiForgeryToken]
    public virtual PartialViewResult Search(SearchVM partnerSearch)
    {
       // Search made here
    }
视图模型:

public class SearchVM
{
    [Required]
    public string Service { get; set; }
}
图书馆:

jquery-2.1.3.js
jquery.unobtrusive-ajax.js (v3.2.3)
jquery.validate.js (v1.13.1)
jquery.validate.unobtrusive.js (v3.2.3)
在一个使用jquery-1.10.2.js的旧项目中,我像这样激活表单的验证:

$.validator.unobtrusive.addValidation("#sch-frm");

它工作得很好,但现在它提交表单时忽略了验证。

由于您使用
Html.Action()
将部分包含在索引视图中(即,它不是在页面呈现后动态添加的内容),因此不必对验证程序执行任何操作(不应该是,这表明您还有其他问题。)什么是
MVC.Home.Search()
?-您不应该在帮助程序中有方法。什么是
.addValidation(#form”);
?什么是
#form'?-您没有带
id=“form”的元素`您好,谢谢您的评论。表单只是提交,不显示任何验证错误消息。MVC.Search是执行搜索的操作(我将用它更新问题)。表单id为“sch form”,请允许我更正,很抱歉出错。请再说一遍-什么是
MVC.Home.Search()
,什么是
.addValidation())
?为什么视图中的模型是
SearchVM
,但返回到
PartnerSearchVM
?您好,MVC.Home.Search是问题中的操作名称(我使用T4MVC插件来避免字符串)和addValidation:能够在PartialView中验证表单。很抱歉,我已将帖子更正回SearchVM。您只需在页面呈现后添加动态内容时重新解析验证程序。
RenderAction
将部分视图添加为视图的一部分,以便
addValidation
不是必需的(也从来不是)
$.validator.unobtrusive.addValidation("#sch-frm");