Перенос js кода в отдельный файл
на странице есть форма с регистрацией, js скрипт:
<script>
function Send() {
var pass = document.forms[0].password.value;
var login = document.forms[0].login.value;
var email = document.forms[0].email.value;
var check = document.getElementById('checkbox');
var referral = document.forms[0].referral.value;
if (!(document.getElementById('login').checkValidity())) {
$('.alert').css('background', 'red');
Notification('Incorrect Login!');
return false
}
if (!(document.getElementById('email').checkValidity())) {
$('.alert').css('background', 'red');
Notification('Incorrect E-mail!');
return false
}
if (!(document.getElementById('password').checkValidity())) {
$('.alert').css('background', 'red');
Notification('Your password must be between 6 and 20 characters. Your password must contain at least one uppercase and one lowercase letter. Your password must contain at least one number');
return false
}
if (check.checked == false) {
$('.alert').css('background', 'red');
Notification('You did not agree to the terms!');
}
$('.login__form').submit(function(e) {
e.preventDefault();
$.ajax({
url: 'Registration.php',
dataType: "json",
type: 'POST',
data: {
login: login,
password: pass,
email: email,
referral: referral
},
success: function(result) {
if (result.color=='green'){
Notification(result.message);
}
else{
$('.alert').css('background',result.color);
Notification(result.message);
return false
}
},
error: function(jqXhr, textStatus, errorMessage) {
$('.alert').css('background','red');
Notification('Error!');
}
});
});
}
function Notification(Text) {
document.getElementById("alert").innerHTML = Text;
$('.alert').animate({
bottom: '10px',
opacity: '1'
}, 1000, function() {
var alertHide = setInterval(function() {
$('.alert').animate({
bottom: '-100%',
opacity: '0'
}, 10000);
clearInterval(alertHide);
}, 10000);
});
}
</script>
Функция send() висит на кнопке "зарегистрироваться". Можно ли как-то перенести(частично/весь) код js в отдельный файл?
Ответы (1 шт):
Автор решения: Leonid
→ Ссылка
Конечно, можно - ничего не изменится. С одной оговоркой, в отдельных файлах объявления функций не поднимаются. Поэтому все библиотеки надо объявлять первыми.
Содержимое тега помещаете в отдельный файл с расширением .js. (без самого <><>). Если назовете файл some.js и разместите в той же папке, то подключать так:
<script src="some.js"></script>
На странице принято размещать либо в <head> либо в конце <body>. Однако, соблюдайте последовательность подключений отдельных файлов, библиотек.