Asp.Net MVC EnableClientValidation ne fonctionne pas

Je veux ainsi que la Validation Côté Client comme Côté Serveur de Validation. J'ai réalisé ce que les suivants:

Modèle: ( Le modèle dispose d'un modèle de données(dbml) qui contient la classe de Test )

namespace MyProject.TestProject
{
    [MetadataType(typeof(TestMetaData))]
    public partial class Test
    {

    }

    public class TestMetaData
    {
        [Required(ErrorMessage="Please enter a name.")]
        [StringLength(50)]
        public string Name { get; set; }
    }
}

Contrôleur n'est rien de spécial.

La Vue:

<% Html.EnableClientValidation(); %>
<% using (Ajax.BeginForm("Index", "Test", FormMethod.Post, 
            new AjaxOptions {}, new { enctype = "multipart/form-data" }))
   {%>
   <%= Html.AntiForgeryToken()%>
    <fieldset>
        <legend>Widget Omschrijving</legend>
        <div>
            <%= Html.LabelFor(Model => Model.Name) %>
            <%= Html.TextBoxFor(Model => Model.Name) %>
            <%= Html.ValidationMessageFor(Model => Model.Name) %>
        </div>
    </fieldset>
    <div>
        <input type="submit" value="Save" />
    </div>
 <% } %>

Au travail, j'ai ajouté des références à des fichiers js:

<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>

Finalement, il a de travailler, mais il ne marche pas à 100%:
Il ne valide avec pas de rafraîchir la page après avoir appuyé sur le bouton.
Il fait aussi de la "moitié" de la Validation Côté Client. Seulement lorsque vous tapez du texte dans la zone de texte, puis retour arrière le texte tapé. Le Côté Client de Validation s'affiche. Mais quand j'ai essayer ce en tapant entre les contrôles il n'y a pas la Validation Côté Client.

Me manque une référence ou quelque chose? (J'utilise Asp.Net MVC 2 RTM)

OriginalL'auteur Colin | 2010-03-23