36 lines
908 B
HTML
36 lines
908 B
HTML
<!DOCTYPE html>
|
|
<html lang="id">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>Portal Siswa</title>
|
|
<link rel="stylesheet" href="style.css">
|
|
</head>
|
|
<body>
|
|
<h1>Selamat Datang di Portal Siswa</h1>
|
|
<button onclick="tampilkanData()">Lihat Data Siswa</button>
|
|
|
|
<div id="tabel-container"></div>
|
|
|
|
<script>
|
|
async function tampilkanData() {
|
|
const res = await fetch('/siswa');
|
|
const data = await res.json();
|
|
|
|
const container = document.getElementById('tabel-container');
|
|
|
|
if (data.length === 0) {
|
|
container.innerHTML = '<p>Data siswa kosong.</p>';
|
|
return;
|
|
}
|
|
|
|
let html = '<table><tr><th>ID</th><th>Nama</th><th>Email</th></tr>';
|
|
data.forEach(siswa => {
|
|
html += `<tr><td>${siswa.id}</td><td>${siswa.name}</td><td>${siswa.email}</td></tr>`;
|
|
});
|
|
html += '</table>';
|
|
|
|
container.innerHTML = html;
|
|
}
|
|
</script>
|
|
</body>
|
|
</html> |