За последние 24 часа нас посетили 22125 программистов и 1125 роботов. Сейчас ищут 753 программиста ...

Не работает AJAX при выносе к файл JS

Тема в разделе "JavaScript и AJAX", создана пользователем Сергей Курц, 31 янв 2022.

  1. Сергей Курц

    Сергей Курц Новичок

    С нами с:
    7 янв 2022
    Сообщения:
    12
    Симпатии:
    0
    Столкнулся с такой проблемой, когда выношу скрипт AJAX (стандартный скрипт обработчика формы) в отдельный js файл и подключаю его снизу - ничего не работает, а вот а html - без нареканий.
    Подскажите, в чем может быть причина?

    Вот пример моего скрипта:
    Код (Javascript):
    1. $(function(){
    2.      $('.form-service').submit(function() { //Change
    3.     var th = $(this);
    4.     $.ajax({
    5.         type: "POST",
    6.         url: "forms.php", //Change
    7.         data: th.serialize(),
    8.         beforeSend: (function(){
    9.           $('.submit').css('color', 'transparent');
    10.           $('.submit').addClass('progress-bar progress-bar-striped progress-bar-animated bg-warning');
    11.           $('.gif').fadeIn();
    12.         }),error: function(XMLHttpRequest, textStatus, errorThrown) {
    13.               $('.err').slideDown();
    14.             },success: (function(data) {
    15.                 if(data == 3){
    16.                     $('.submit').css('color', '#333');
    17.                 $('.submit').removeClass('progress-bar progress-bar-striped progress-bar-animated bg-warning');
    18.                 $('.service1').fadeIn();
    19.                 setTimeout(function() {
    20.             // Done Functions
    21.            // window.location.reload();
    22.            document.location.href = "#tab-4";
    23.            $('.service1').hide();
    24.         }, 2000);
    25.  
    26.    
    27.  
    28.                 }
    29.              if(data == 4){
    30.                    $('.submit').css('color', '#333');
    31.                $('.submit').removeClass('progress-bar progress-bar-striped progress-bar-animated bg-warning');
    32.                $('.service2').fadeIn();
    33.                setTimeout(function() {
    34.             // Done Functions
    35.            // window.location.reload();
    36.        
    37.            $('.service2').hide();
    38.         }, 2000);
    39.  
    40.                }
    41.  
    42.                
    43.        
    44.     })
    45. })
    46.     return false;
    47. })
    48. })
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    первую очередь, должна быть подключена jquery.min.js, следом остальной код.
    Открой F11 консоль и увидишь сообщение подобное: function $ undefined
     
  3. Сергей Курц

    Сергей Курц Новичок

    С нами с:
    7 янв 2022
    Сообщения:
    12
    Симпатии:
    0
    jquery у меня подключено ссылкой в хеде сайта.
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.825
    Симпатии:
    738
    Адрес:
    Татарстан
    че гадать то - надо целиком приветси...
    но 99% именно в порядке следования
    а вообще консоль разве не ругается?