jquery - ненавязчивая проверка ошибок javascript при загрузке - $ jQval не определен - PullRequest
2 голосов
/ 24 ноября 2011

Я использую это с JQuery 1,7.Я получаю - jQval is undefined ошибка.

Вот так я загружаю скрипт.

$.ajax({
    url: "http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.validate.unobtrusive.js",
    dataType: "script",
    cache: true,
    success: callback
});

Я также пытался загрузить его прямо в голову - та же ошибка

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>

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

Ответы [ 3 ]

9 голосов
/ 25 января 2013

Просто отправка сообщений для всех, кто попадает сюда из поиска ...

Причина, по которой вы получили ошибку при загрузке файлов в голове, заключается в том, что jquery.validate.unobtrusive требует jquery.validate.Именно это и стало причиной ошибки.

(т.е. дважды проверьте, что вы успешно включили jquery.validate перед jquery.validate.unobtrusive)

1 голос
/ 24 ноября 2011

Решено Каскадные вызовы загрузки ajax решили это .. похоже на проблему синхронизации при загрузке двух файлов

$.ajax({
       url: "http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js",
       dataType: "script",
       cache: true,
       success: function () {
                        $.ajax({
                             url: "http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.validate.unobtrusive.js",
                             dataType: "script",
                             cache: true,
                        });
                }
});
0 голосов
/ 24 ноября 2011

Следующие 3 скрипта отлично работают для меня:

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

Предположим, у вас есть форма:

@using (Html.BeginForm())
{
    @Html.EditorFor(x => x.Foo)
    @Html.ValidationMessageFor(x => x.Foo)
    <button type="submit">OK</button>
}

набрано для просмотра модели:

public class MyViewModel
{
    [Required]
    public string Foo { get; set; }
}
...