2013-08-06 4 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

привет я просто обновить свой код и поместить '$ (документ) .ready (функция() {}); ' в вашем скрипте. – 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> 
Смежные вопросы