let myForm = document.querySelector('#id_Form');
myForm.addEventListener('submit', function(event) {
event.preventDefault();
// Здесь кнопка нажимается только если она активна. В HTML убрал класс, для упрощения.
if (this.querySelector('#id_butt').classList.contains('butt_Activ')) {
let xhr = new XMLHttpRequest(); // Создан AJAX-транспорт.
let formData = new FormData(myForm); // Создан новый Объект-FormData.
// При завершении запроса:
xhr.onloadend = function() {
if (xhr.status === 200) {
_При успешном ответе сервера - вставляем ответ как значение в кнопку.
return;
} else {
_При ошибке запроса - сообщение об ошибке.
return;
}
}
xhr.open('POST', '/my_form');
xhr.send(formData);
}
});
function ClickButt() { let myForm = document.querySelector('#id_Form'); myForm.addEventListener('submit', function(event) { event.preventDefault(); // Здесь кнопка нажимается только если она активна. В HTML убрал класс, для упрощения. if (this.querySelector('#id_butt').classList.contains('butt_Activ')) { let xhr = new XMLHttpRequest(); // Создан AJAX-транспорт. let formData = new FormData(myForm); // Создан новый Объект-FormData. // При завершении запроса: xhr.onloadend = function() { if (xhr.status === 200) { _При успешном ответе сервера - вставляем ответ как значение в кнопку. return; } else { _При ошибке запроса - сообщение об ошибке. return; } } xhr.open('POST', '/my_form'); xhr.send(formData); } }); }
$text = "true box";
// можно так
$result1 = "<div class=\"box\" data-box=\"$text\"></div>";
// можно комбинировать с одиночными кавычками
$result2 = '<div class="box" data-box="' . $text. '"></div>';
$result3 = "<div class='box' data-box='$text'></div>";
print_r($result1 . PHP_EOL);
print_r($result2 . PHP_EOL);
print_r($result3 . PHP_EOL);
// а можно делать более изящно и читаемо
$result4 = sprintf('<div class="box" data-box="%s"></div>', $text);
print_r($result4 . PHP_EOL);
<form id="id_Form">
<button type="submit" disabled>Ok</button>
</form>
let myForm = document.querySelector('#id_Form');
myForm.addEventListener('submit', function(event) {
event.preventDefault();
let xhr = new XMLHttpRequest(); // Создан AJAX-транспорт.
let formData = new FormData(myForm); // Создан новый Объект-FormData.
// При завершении запроса:
xhr.onloadend = function() {
if (xhr.status === 200) {
_При успешном ответе сервера - вставляем ответ как значение в кнопку.
return;
} else {
_При ошибке запроса - сообщение об ошибке.
return;
}
}
xhr.open('POST', '/my_form');
xhr.send(formData);
});
~$sudo fsck -nf /dev/mapper/ubuntu--vg-root
fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
Warning! /dev/mapper/ubuntu--vg-root is mounted.
Warning: skipping journal recovery because doing a read-only filesystem check.
Pass 1: Checking inodes, blocks, and sizes
Inodes that were part of a corrupted orphan linked list found. Fix? no
Inode 130902 was part of the orphaned inode list. IGNORED.
Deleted inode 131060 has zero dtime. Fix? no
Inode 131072 was part of the orphaned inode list. IGNORED.
Inode 131131 was part of the orphaned inode list. IGNORED.
Inode 131152 was part of the orphaned inode list. IGNORED.
Inode 131412 was part of the orphaned inode list. IGNORED.
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences: +(1686864--1686865) -(1686866--1686867)
Fix? no
Free blocks count wrong (5472547, counted=5459419).
Fix? no
Inode bitmap differences: -130902 -131060 -131072 -131131 -131152 -131412
Fix? no
Free inodes count wrong (1632828, counted=1632821).
Fix? no
/dev/mapper/ubuntu--vg-root: ********** WARNING: Filesystem still has errors **********
/dev/mapper/ubuntu--vg-root: 255828/1888656 files (0.2% non-contiguous), 2067165/7539712 blocks
sudo fsck -yf /dev/mapper/ubuntu--vg-root
fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/mapper/ubuntu--vg-root is mounted.
e2fsck: Cannot continue, aborting.