One Hat Cyber Team
Your IP :
18.219.36.191
Server IP :
50.28.103.30
Server :
Linux host.jcukjv-lwsites.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
Server Software :
nginx/1.24.0
PHP Version :
8.3.12
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
www
/
wwwroot
/
ef.electronharmony.com
/
1
/
T6
/
Edit File:
index.html
<!DOCTYPE html> <html> <head> <title>Us</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="https://cdn.staticfile.net/twitter-bootstrap/5.1.1/css/bootstrap.min.css" rel="stylesheet"> <script src="https://cdn.staticfile.net/twitter-bootstrap/5.1.1/js/bootstrap.bundle.min.js"></script> <style> .container { max-width: 600px; } .record { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; padding: 10px; border: 1px solid #ddd; border-radius: 5px; background-color: #f9f9f9; } .record a { color: #007bff; text-decoration: none; } .record a:hover { text-decoration: underline; } .record button { margin-left: 5px; } </style> </head> <body> <div class="container mt-3"> <h1 class="text-center text-primary">增删改查功能</h1> <form id="addForm" class="d-flex mb-4"> <input type="text" id="name" class="form-control me-2" placeholder="名称" required> <input type="url" id="url" class="form-control me-2" placeholder="URL" required> <button type="submit" class="btn btn-primary">添加</button> </form> <div id="dataContainer"> <!-- 动态内容将插入这里 --> </div> </div> <script> const addForm = document.getElementById('addForm'); const dataContainer = document.getElementById('dataContainer'); let data = JSON.parse(localStorage.getItem('data')) || []; let currentIndex = data.length ? Math.max(...data.map(item => item.id)) + 1 : 1; function loadData() { data.forEach(item => addCard(item.id, item.name, item.url)); } function saveData() { localStorage.setItem('data', JSON.stringify(data)); } addForm.addEventListener('submit', function (e) { e.preventDefault(); const name = document.getElementById('name').value; const url = document.getElementById('url').value; const newItem = { id: currentIndex++, name, url }; data.push(newItem); saveData(); addCard(newItem.id, name, url); document.getElementById('name').value = ''; document.getElementById('url').value = ''; }); function addCard(id, name, url) { const card = document.createElement('div'); card.className = 'record'; card.setAttribute('data-id', id); card.innerHTML = ` <p class="text-primary"><a href="${url}" target="_blank">${name}</a></p> <div> <button class="btn btn-warning btn-sm" onclick="editCard(this)">编辑</button> <button class="btn btn-danger btn-sm" onclick="deleteCard(this)">删除</button> <button class="btn btn-success btn-sm" style="display:none;" onclick="saveCard(this)">保存</button> </div> `; dataContainer.appendChild(card); } function editCard(button) { const card = button.parentNode.parentNode; const link = card.querySelector('a'); const name = link.innerText; const url = link.getAttribute('href'); const nameInput = document.createElement('input'); nameInput.type = 'text'; nameInput.value = name; nameInput.className = 'form-control me-2'; const urlInput = document.createElement('input'); urlInput.type = 'url'; urlInput.value = url; urlInput.className = 'form-control'; link.parentElement.replaceWith(nameInput); link.remove(); const controls = button.parentNode; controls.querySelector('.btn-warning').style.display = 'none'; controls.querySelector('.btn-success').style.display = 'inline-block'; card.querySelector('p').appendChild(urlInput); } function saveCard(button) { const card = button.parentNode.parentNode; const nameInput = card.querySelector('input[type="text"]'); const urlInput = card.querySelector('input[type="url"]'); const name = nameInput.value; const url = urlInput.value; const updatedItem = data.find(item => item.id === parseInt(card.getAttribute('data-id'))); updatedItem.name = name; updatedItem.url = url; saveData(); const link = document.createElement('a'); link.href = url; link.target = '_blank'; link.className = 'text-primary'; link.innerText = name; nameInput.parentElement.replaceWith(link); nameInput.remove(); urlInput.remove(); const controls = button.parentNode; controls.querySelector('.btn-warning').style.display = 'inline-block'; controls.querySelector('.btn-success').style.display = 'none'; } function deleteCard(button) { const card = button.parentNode.parentNode; const id = parseInt(card.getAttribute('data-id')); data = data.filter(item => item.id !== id); saveData(); card.remove(); } loadData(); </script> </body> </html>
Simpan