Ошибка среды выполнения Microsoft JScript: объект не поддерживает свойство или метод ‘validate’

#c# #jquery #model-view-controller #validation

#c# #jquery #модель-представление-контроллер #проверка

Вопрос:

Проблема заключается в том, что я получаю сообщение об ошибке, ошибка среды выполнения Microsoft JScript: объект не поддерживает свойство или метод ‘validate’. Не удалось выяснить, почему. Есть предложения?

 <form id="ContactUs" class="float-left" autocomplete="off">
    <div class="box-content">
            <div id="Department-List" class="field clearfix">            
                <select id="DepartmentList" size="1" name="DepartmentList" class="required">
                   <% foreach(var options in (List<string>)ViewBag.DepartmentList) { %>
                        <option id="<%:options%>" value="<%:options%>" ><%:options%></option>
                    <% } %>
                </select>
            </div>
            <div class="field clearfix">
                <label class="float-left">NAME:</label>
                <input type="text" id="Name" class="required full-width text radi-4" minlength="3"/>
            </div>
            <div class="field clearfix">
                <label class="float-left">PHONE:</label>
                <input type="text" id="Phone" class="required PhoneNumbers full-width text radi-4" />
            </div>
            <div class="field clearfix">
                <label class="float-left">EMAIL:</label>
                <input type="text" id="SendersEmail" class="required email full-width text radi-4"/>
            </div>
            <div class="field clearfix">
                <label class="float-left">ACCOUNT #:</label>
                <input type="text" id="AccountNumber" class="full-width text radi-4" />
            </div>
            <div class="field clearfix">
                <label class="float-left">QUESTIONS:</label>
                <textarea id="QuestionBox" rows="4" cols="25" class="required full-width text radi-4"></textarea>
            </div>


            <div class="field clearfix">
                <input id="submit-inventory-request-button" type="submit" name="Submit" value="Send" class="submit next-step toggle-btn radi-3 arrow-icon" />
            </div>
  

Когда я пытаюсь отправить форму, я получаю сообщение об ошибке от функции $(‘#ContactUs’).validate() .

  <script type="text/javascript">

     $(document).ready(function () {
         $('#ContactUs').validate({
            errorElement: 'span',
            success: 'valid',
            error: 'error',
            submitHandler: function() {

                var contact = {
                    DepartmentList: $('#DepartmentList').val()
                        , Name: $('#Name').val()
                        , Phone: $('#Phone').val()
                        , SendersEmail: $('#SendersEmail').val()
                        , RequestersEmail: $('#RequestersEmail').val()
                        , AccountNumber: $('#AccountNumber').val()
                        , QuestionBox: $('#QuestionBox').val()
                        , TermsCheckBox: $('#TermsCheckBox').val()
                };
                var req;
                req = DT.ajaxData('/Ajax/ContactUs/', 'POST', JSON.stringify(contact));

                // if the ajax request is successful, then display the success message and redirect the page
                req.done(function(data) {
                    console.log(data);
                    $("#partial").dialog('close');
                    $("#SuccessMessage").dialog({ buttons: { "Ok": function() { $(this).dialog("close"); } } });
                });

                return false;

            }
        });
    })
  

Ответ №1:

Нет встроенной функции jQuery с именем validate . Однако он доступен из нескольких плагинов. Например

Правильно ли вы включили плагин на свою страницу?

Комментарии:

1. Только что выяснил, что кто-то еще допустил ошибку. Спасибо!

Ответ №2:

При использовании Visual Studio самый простой способ — использовать расширение NuGet для загрузки jQuery. Если у вас его нет, вы можете найти его по адресу www.codeplex.com и установите его. Затем перейдите в Сервис -> Диспетчер пакетов библиотеки -> Управление пакетами NuGet в Visual Studio и выполните поиск jQuery. Как только это будет установлено, папка сценария в вашем проекте будет содержать необходимые файлы.

Измените путь в вашем файле view.cshtml, чтобы указать на текущую версию jQuery, например 1.7.1 в этом случае