2010-06-10 6 views
0

Je suis complètement nouveau à JQuery et MVC.JQuery datepicker ne fonctionne pas

Je travaille sur un projet d'animal de compagnie qui utilise à la fois pour les apprendre et j'ai frappé mon premier hic.

J'ai un champ de date et je veux ajouter le Dateur de date JQuery à l'interface utilisateur. Voici ce que je l'ai fait:

Ajouté <script src="../../Scripts/jquery-1.3.2.min.js" type="text/javascript"></script> au Site.master

Inside my Create.aspx (Voir), je

<asp:Content ID="Create" ContentPlaceHolderID="MainContent" runat="server"> 
    <h2> 
     Create a Task</h2> 
    <% Html.RenderPartial("TaskForm"); %> 
    </asp:Content> 

et à l'intérieur "TaskForm" (un contrôle utilisateur) J'ai:

<label for="dDueDate"> 
      Due Date</label> 
     <%= Html.TextBox("dDueDate",(Model.Task.TaskID > 0 ? string.Format("{0:g}",Model.Task.DueDate) : DateTime.Today.ToString("MM/dd/yyyy"))) %> 

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

Comme vous pouvez le voir, les contrôles ci-dessus pour voir si une tâche a un id> 0 (nous ne sommes pas en créer un nouveau) si elle le fait, il utilise la date t il tâche, sinon il vaut par défaut aujourd'hui. Je me attends à l'élément d'interface datepicker pour montrer, mais j'obtenir:

« Erreur d'exécution Microsoft JScript: Cet objet ne gère pas cette propriété ou méthode » sur les $("#dDueDate").datepicker();

Idées? C'est probablement une erreur très simple, donc ne pas trop analyser. Comme je l'ai dit, c'est la première fois que j'ai traité avec MVC ou JQuery, donc je ne sais pas par où commencer.

+1

DatePicker fait partie de jQuery UI, pas core jQuery, êtes-vous en train d'inclure les deux sur votre page? – R0MANARMY

+0

Vous devez demander à ASP de vous donner le "ID client" pour la zone de texte. Je ne sais pas comment faire ça, mais quelqu'un le fera. – Pointy

+0

Merci à tous - Je viens de sélectionner la réponse la plus ancienne puisque vous alliez bien. Ajouté l'interface utilisateur JQuery et cela a fonctionné comme un charme. – IniTech

Répondre

5

datepicker() est une méthode jQuery UI, il semble que vous n'utilisiez que jQuery.
Vous devez download et comprennent jQuery UI en plus de jQuery

Assurez-vous de télécharger la version compatible avec jQuery 1.3.2.

1

Vous avez inclus la bibliothèque jQuery, mais pas la bibliothèque jQueryUI. Vous devez faire quelque chose comme ceci:

<script src="../../Scripts/jqueryui-1.8.1.min.js" type="text/javascript"></script> 
+0

Bien sûr, cela signifie que vous avez là le fichier jqueryui-1.8.1.min.js. Vous pouvez utiliser Google ou MS CDN pour récupérer ce fichier à partir de là. – Ololo

+0

Pour utiliser 1.8.1, il aura besoin de jQuery 1.4, et non de 1.3 comme il l'utilise actuellement. – R0MANARMY

Questions connexes