document.querySelector('.auth__button').addEventListener('click', auth);
async function auth() {
event.preventDefault();
var login = document.querySelector('.auth__input--login').value;
var password = document.querySelector('.auth__input--password').value;
var form = new FormData();
form.append('username', login);
form.append('password', password);
var url = 'https://авторизация';
var response = await (await fetch(url, { method: 'POST', body: form })).text();
console.log('Ответ сервера', response);
}
async function elementUpdate(selector) {
try {
var html = await (await fetch(location.href)).text();
var newdoc = new DOMParser().parseFromString(html, 'text/html');
document.querySelector(selector).outerHTML = newdoc.querySelector(selector).outerHTML;
console.log('Элемент '+selector+' был успешно обновлен');
return true;
} catch(err) {
console.log('При обновлении элемента '+selector+' произошла ошибка:');
console.error(err);
return false;
}
}
elementUpdate('.test');
// Запускаем функцию autoUpdate по готовности страницы:
document.addEventListener('DOMContentLoaded', autoUpdate);
// Функция для запуска цикла:
async function autoUpdate() {
// Бесконечный цикл:
while (true) {
// Обновляем блок .test:
await elementUpdate('.test');
// Выжидаем 1000 миллисекунд перед повторением цикла:
await new Promise(function(s) { setTimeout(s, 1000); });
}
}
// Функция для обновления контента:
async function elementUpdate(selector) {
try {
var html = await (await fetch(location.href)).text();
var newdoc = new DOMParser().parseFromString(html, 'text/html');
document.querySelector(selector).outerHTML = newdoc.querySelector(selector).outerHTML;
console.log('Элемент '+selector+' был успешно обновлен.');
return true;
} catch(err) {
console.error('При обновлении элемента '+selector+' произошла ошибка:', err);
return false;
}
}
document.onclick = (e) =>{
if(e.target.matches('.class')){
console.log('d');
}
}
document.body.addEventListener('mouseenter', function(e) {
console.log(e.target);
});
async function elementUpdate(selector) {
try {
var html = await (await fetch(location.href)).text();
var newdoc = new DOMParser().parseFromString(html, 'text/html');
document.querySelector(selector).outerHTML = newdoc.querySelector(selector).outerHTML;
console.log('Элемент '+selector+' был успешно обновлен');
return true;
} catch(err) {
console.log('При обновлении элемента '+selector+' произошла ошибка:');
console.error(err);
return false;
}
}
elementUpdate('.soderzhimoye');
<button onclick="elementUpdate('.soderzhimoye');">Нажми меня, чтобы обновить блок</button>
<script>
// Обрабочик для отслеживания готовности страницы:
document.addEventListener('DOMContentLoaded', function() {
// Ставим на форму обработчик срабатывающий при отправке формы:
document.querySelector('form').addEventListener('submit', async function() {
var this_form = this; // Получаем ссылку на форму
event.preventDefault(); // Отменяем обычную отправку
// Блокируем нажатия по форме:
this_form.style.opacity = '0.5';
this_form.style.pointerEvents = 'none';
// Блок кода для отправки формы:
try {
// Отправляем форму без перезагрузки страницы и выводим ответ сервера на месте формы, как обычный текст:
this_form.outerHTML = await (await fetch(this_form.action, { method: 'POST', body: new FormData(this_form) })).text();
}
// Блок кода для обработки ошибок:
catch(err) {
// Вывод ошибки, если вдруг отправка неудачная:
console.error(err); this_form.outerHTML = err.toString();
// Разблокируем форму:
this_form.style.opacity = '';
this_form.style.pointerEvents = '';
}
});
});
</script>
$('table#price-table > tbody > tr').sort(function(a, b) {
var one = Number($(a).children().eq(6).text().replace(/[^0-9]/g, ''));
var two = Number($(b).children().eq(6).text().replace(/[^0-9]/g, ''));
return two - one;
}).each(function(n, tr) {
$('table#price-table > tbody').append(tr);
});