2013-08-06 62 views
0

我在弹出窗口中放置了以下代码。基本上我试图实现的是验证在这种情况下HRN所需的字段。不幸的是,没有验证显示。请让我知道我可以如何解决这个问题。谢谢如何验证MVC弹出窗口

查看:

@model HHIMS_Web_App.Models.CModel

 <div> 

     <fieldset id="AddNew"> 

       @using (Html.BeginForm("CreateList", "Details", FormMethod.Post, new { id = "frmAsset" })) 
       { 
        @Html.AntiForgeryToken() 
        @Html.ValidationSummary(true) 
       <div> 
        <div class="addConsumerInfo"> 
         @Html.LabelFor(model => model.HRN) 
         @Html.EditorFor(model => model.HRN) 
         @Html.ValidationMessageFor(model => model.HRN) 
        </div> 

        <div class="consumerAddSmallBox"> 
         @Html.LabelFor(model => model.DOB) 

         @Html.EditorFor(model => model.DOB) 

        </div> 

       </div> 


       } 
      </fieldset> 

     </div> 


    <input type="button" id="btnSave" style="height:50px; width:85px; font-size:14px; background-color:#3399FF;white-space: normal" class="k-button" title="Save" value="Save"/> 




<script type="text/javascript"> 


    $('#btnSave').click(function() { 

      var dropdownlist = $("#Gender").data("kendoDropDownList").select(); 

      $.ajax({ 
       type: 'POST', 
       url: "@Url.Action("CreateList","Details")", 
       data: { 

        HRN: $("#HRN").val(), 
        DOB: $("#DOB").val() 



       }, 

       success: function() { 
        window.close() 
       } 
      }); 
     }); 

</script> 

型号:

[Required(ErrorMessage = "Required")] 
    [DisplayName("HRN")] 
    public string HRN { get; set; 

回答

0

嗨尝试一下本作的表单验证

$(document).ready(function() { 

$('#btnSave').click(function() { 

      var validation = $("#frmAsset"); 
         if (!validation.valid()) { 
         return false; 
         } 
else 
{ 

      var dropdownlist = $("#Gender").data("kendoDropDownList").select(); 

      $.ajax({ 
       type: 'POST', 
       url: "@Url.Action("CreateList","Details")", 
       data: { 

        HRN: $("#HRN").val(), 
        DOB: $("#DOB").val() 



       }, 

       success: function() { 
        window.close() 
       } 
      }); 
} 
     }); 
}); 
+0

我试了,但还是没有触发任何字段有效性 – Spidey

+0

您好我刚刚更新我的代码,并把'$(文件)。就绪(函数(){}); ' 在您的脚本。 – Jaimin

+0

仍然是同样的问题。谢谢 – Spidey

0

按钮必须在表格中。

尝试这样,

  @using (Html.BeginForm("CreateList", "Details", FormMethod.Post, new { id = "frmAsset" })) 
      { 
       @Html.AntiForgeryToken() 
       @Html.ValidationSummary(true) 
      <div> 
       <div class="addConsumerInfo"> 
        @Html.LabelFor(model => model.HRN) 
        @Html.EditorFor(model => model.HRN) 
        @Html.ValidationMessageFor(model => model.HRN) 
       </div> 

       <div class="consumerAddSmallBox"> 
        @Html.LabelFor(model => model.DOB) 

        @Html.EditorFor(model => model.DOB) 

       </div> 

      </div> 
<input type="button" id="btnSave" style="height:50px; width:85px; font-size:14px; background-  color:#3399FF;white-space: normal" class="k-button" title="Save" value="Save"/> 

      } 
     </fieldset> 
相关问题