Символ “$” в JavaScripty. JQuery. Как расшифровать код?

212
03 марта 2018, 19:33

Здравствуйте, помогите понять код, я не изучал нигде js и прочее.

$(document).ready(function(){
//Проверка корректности введенных данных
function validateData(){
    var errors = new Array();
    if( $('input[name="email"]').val() == '' ){
        errors.push( 'Поле "Эл. почта" не может быть пустым' );
    }
    if( $('input[name="password-first"]' ).val() == '' ){
        errors.push( 'Поле "Пароль" не может быть пустым' );
    }
    if( $('input[name="password-second"]').val() == '' ){
        errors.push( 'Поле "Подветржение пароля" не может быть пустым' );
    }
    if( $('input[name="password-second"]').val() != $('input[name="password-first"]' ).val() ){
        errors.push( '"Пароль" и "Подветржение пароля" должны совпадать' );
    }
    if( $('input[name="name"]').val() == '' ){
        errors.push( 'Поле "Имя" не может быть пустым' );
    }
    if( errors.length > 0 ){
        var message = "Внимание:\n";
        message += errors.join("\n");
        alert( message );
        return false;
    }
    return true;                
}
/**
* Отправка формы при нажатии кнопки "Зарегестрировать" 
*/
$('#register').click(function(){
    if( validateData() ){   
        $('#employer-registration').submit();
        dataLayer.push({'registration_employer': 'registration_employer_success'});
    }
}); 
});

такой вот код. Мне нужно сделать так, чтобы при успешной! отправке данных заполненной формы на сервер передавался так же уровень данных datalayer

dataLayer.push({'registration_employer': 'registration_employer_success'});

Извиняюсь за глупые вопросы. Хелп. Спасибо.

Answer 1

Это скорее всего вам нужно писать не в этом участке кода, который вы прислали. А в том, где у вас собираются данные с полей и отправляются методом POST. Туда нужно положить свой массив dataLayer.

В вашем случае код, который отправляет что-то на сервер выглядеть должен как-то так (или содержит как минимум такой запрос):

$.ajax({
  type: "POST",
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

В параметре data лежит массив или объект, или JSON, или просто строка, которая отправляет данные с полей.

Нужно либо к этой строке присоединить свой dataLayer, либо написать подобный запрос и отправить dataLayer отдельно.

READ ALSO
$(…).autoсomplete is not a function

$(…).autoсomplete is not a function

Всем привет! Не понимаю в чем проблемаПодключен JS и библиотека автокомплит

227
Использование Php кода в pug

Использование Php кода в pug

Есть кусок кода на pug

228
Как сделать div по размеру img?

Как сделать div по размеру img?

Вопрос: как сделать так, чтобы div#imgcont был по размеру равен img, при этом width и height у изображения были заданы в css 30%?

173