2013-03-13 61 views
1

我的頁面上有一些jQuery,當單擊按鈕時顯示帶有一些控件的div。 最初div是隱藏的。MVC - ClientValidationEnabled = true,但仍然有一個回發,毀了我的jQuery

我在我的web.config中設置了ClientValidationEnabled = true。 如果我點擊顯示按鈕,帶有控件的div會顯示,但是如果我填入一些數據,然後單擊提交按鈕,而不是客戶端驗證插入,頁面將重新加載,並且我將返回到開始位置再次,我的div被隱藏起來。

這可能是什麼原因造成的?

這是我的看法......

<script type="text/javascript" src="~/Scripts/jquery-1.7.1.min.js"></script> 
<h2>cardiac</h2> 

<br> 
@using (Html.BeginForm()) { 
    @Html.ValidationSummary(true) 
    <fieldset> 
     <legend>cardiac</legend> 
     <div id ="confirmdiv" class="notificationdiv" align="center"> 
      Please check sample type, this screen is only for <b>Cardiac</b> results and <b>NOT</b> Liquid Cardiac. 
      <br />  
      <input type ="button" id ="buttonConfirm" value ="Confirm"/> 
      <input type ="button" id ="buttonBack" value ="Back"/> 
     </div> 
     <div id ="formdiv" style="display:none;"> 
      <br> 
      Please fill in your results...  
      <br/> 
      @Html.Partial("_CreateOrEdit", Model)  

      <input type="submit" value="Submit" /> 
     </div> 
    </fieldset> 
} 

<script type="text/javascript"> 
    $(document).ready(function() { 

     $("#buttonConfirm").click(function() { 
      $("#confirmdiv").hide(); 
      $("#formdiv").show(); 
     }); 
    }); 
</script> 

回答

4

它看起來像你的jQuery包括,但沒有其他所需的腳本。

嘗試增加

<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.0/jquery.validate.min.js"></script> 
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.validate.unobtrusive.min.js"></script> 

這些將實施必要的驗證特性。

編輯:哎呀,我假設你有你的模型上的必要屬性,以根據需要調用驗證

+0

感謝glosrob,完美的作品! – 2013-03-13 12:27:54

相關問題