2011-02-14 76 views
0

嗨,我是新的mvc和web開發;我想要做這樣的事情.net mvc加載包含jquery的partialview

然後當你點擊編輯時,頁面會加載類似的東西。

我使用ajax來做到這一點,但問題是,當我點擊編輯ajax不使用任何我的腳本,我的意思是日期時間選擇器腳本不工作,或任何其他的JavaScript。

彌代碼是這樣的

我的主要視圖:

<div id="Estudiantes del tutor"> 
      </br> 
      <table style="margin-left:auto; margin-right:auto;"> 
       <tr> 
        <th>Código</th> 
        <th>Estudiante</th> 
        <th></th> 
       </tr> 
       <% foreach (var item in Model.Hijos) { %> 
        <tr> 
         <td> 
          <%: Html.Encode(item.PersonaNaturalId.ToString("D8")) %> 
         </td> 
         <td> 
          <%: Html.Encode(item.Nombre +" "+item.ApellidoPaterno+ " "+ item.ApellidoMaterno) %> 
         </td> 
         <td> 
          <%: Html.ActionLink("Editar", "EditarEstudiante", new { tutorId = Model.TutorBE.PersonaNaturalId ,estudianteId = item.PersonaNaturalId }) %> 
           | 
          <%: Ajax.ActionLink("Editar", "EditarEstudiante", new { tutorId = Model.TutorBE.PersonaNaturalId ,estudianteId = item.PersonaNaturalId }, new AjaxOptions { UpdateTargetId = "DatosEstudiante"})%> 
         </td> 
        </tr> 
       <% } %> 
      </table> 
    </div> 
    <br/> 
    <br/> 
    <br/> 
    <div id="DatosEstudiante"> 

    </div> 

而我的部分觀點是這樣的:

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" /> 
    <link href="../../Content/SiteHeinrich.css" rel="stylesheet" type="text/css" /> 
    <script src="../../Scripts/jquery-1.4.1.js" type="text/javascript"></script> 
    <script src="../../Scripts/jquery-ui-1.8.8.custom.min.js" type="text/javascript"></script> 
    <link href="../../Content/blitzer/jquery-ui-1.8.8.custom.css" rel="stylesheet" type="text/css" /> 
    <link href="../../Content/VocacionalSite.css" rel="stylesheet" type="text/css" /> 
    <script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script> 
    <script src="../../Scripts/MicrosoftMvcValidation.debug.js" type="text/javascript"></script> 

<br /> <%= Html.ValidationSummary("Por favor corrija los errores e intente de nuevo.")%> <%using (Html.BeginForm()) { %> <%: Html.ValidationSummary(true) %> <div id="DatosGenerales"> 
    <fieldset style="margin-left: auto; margin-right: auto;"> 
     <legend>Datos generales del estudiante</legend> 
     <div id="Nombres del estudiante"> 
      <div id="Nombre" style="float: left; margin-left: auto; margin-right: auto; width: 250px;"> 
       <%: Html.Label("Nombres: ") %> 
       <br /> 
       <%: Html.TextBox("Nombres", Model.Estudiante.Nombre, Model.Estudiante.Nombre != null ? new {@readonly ="readonly"} : null)%> 
       <%: Html.ValidationMessage("Nombres","*") %> 
      </div> 
      <div id="ApellidoPaterno" style="float: left; margin-left: auto; margin-right: auto; 
       width: 250px;"> 
       <%: Html.Label("Apellido paterno: ") %> 
       <br /> 
       <%: Html.TextBox("ApellidoPaterno", Model.Estudiante.ApellidoPaterno, Model.Estudiante.ApellidoPaterno != null ? new { @readonly = "readonly" } : null)%> 
       <%: Html.ValidationMessage("ApellidoPaterno","*")%> 
      </div> 
      <div id="ApellidoMaterno" style="float: left; margin-left: auto; margin-right: auto; 
       width: 250px;"> 
       <%: Html.Label("Apellido materno: ") %> 
       <br /> 
       <%: Html.TextBox("ApellidoMaterno", Model.Estudiante.ApellidoMaterno, Model.Estudiante.ApellidoMaterno != null ? new { @readonly = "readonly" } : null)%> 
       <%: Html.ValidationMessage("ApellidoMaterno", "*")%> 
      </div> 
     </div> 
     <br /> 
     <div id="Otros datos generales" style="clear: both;"> 
      <br /> 
      <script> 
       $(function() { 
        $("#datepicker").datepicker(); 
       });  </script> 



<div class="demo"> 

<p>Date: <input type="text" id="datepicker"></p> 

</div><!-- End demo --> 



<div class="demo-description" style="display: none; "> <p>The datepicker is tied to a standard form input field. Focus on the input (click, or use the tab key) to open an interactive calendar in a small overlay. Choose a date, click elsewhere on the page (blur the input), or hit the Esc key to close. If a date is chosen, feedback is shown as the input's value.</p> </div><!-- End demo-description --> 
     </div> 
    </fieldset> </div> 

回答

1

我會使用jQuery的ready()函數來運行你的腳本。

所以穿上了這一點,你的部分觀點

<script> 
$(function() 
{ 
    $("#datepicker").datepicker(); 
});  
</script> 

,並添加到您的主要視圖。它將在頁面加載後運行。

<script type="text/javascript"> 
    $(document).ready(function() 
    { 
    $("#datepicker").datepicker(); 
    }); 
</script> 
0

jQuery的的document.ready只能觸發一次。 DOM準備就緒後。所以你的腳本都不會被執行。你可以看看使用諸如livequery之類的東西。