用html写公告通知并包含增加,修改,删除的功能
时间: 2024-02-27 08:58:31 浏览: 232
好的,下面是一个简单的HTML代码示例,可以实现公告通知的增加、修改和删除功能。请注意,此代码示例仅为演示目的,可能需要根据实际需要进行修改和完善。
```html
<!DOCTYPE html>
<html>
<head>
<title>公告通知</title>
</head>
<body>
<h1>公告通知</h1>
<!-- 显示公告列表 -->
<h2>公告列表</h2>
<ul id="notice-list">
<li>公告1 <button onclick="editNotice(1)">编辑</button> <button onclick="deleteNotice(1)">删除</button></li>
<li>公告2 <button onclick="editNotice(2)">编辑</button> <button onclick="deleteNotice(2)">删除</button></li>
<li>公告3 <button onclick="editNotice(3)">编辑</button> <button onclick="deleteNotice(3)">删除</button></li>
</ul>
<!-- 添加公告表单 -->
<h2>添加公告</h2>
<form id="add-notice-form">
<label for="notice-title">标题:</label>
<input type="text" id="notice-title" name="notice-title"><br>
<label for="notice-content">内容:</label>
<textarea id="notice-content" name="notice-content"></textarea><br>
<button type="button" onclick="addNotice()">提交</button>
</form>
<!-- 编辑公告表单 -->
<h2>编辑公告</h2>
<form id="edit-notice-form">
<input type="hidden" id="edit-notice-id" name="edit-notice-id">
<label for="edit-notice-title">标题:</label>
<input type="text" id="edit-notice-title" name="edit-notice-title"><br>
<label for="edit-notice-content">内容:</label>
<textarea id="edit-notice-content" name="edit-notice-content"></textarea><br>
<button type="button" onclick="updateNotice()">提交</button>
</form>
<script>
// 公告列表数据
var notices = [
{id: 1, title: "公告1", content: "这是公告1的内容。"},
{id: 2, title: "公告2", content: "这是公告2的内容。"},
{id: 3, title: "公告3", content: "这是公告3的内容。"},
];
// 显示公告列表
function showNoticeList() {
var list = document.getElementById("notice-list");
list.innerHTML = "";
for (var i = 0; i < notices.length; i++) {
var notice = notices[i];
var item = document.createElement("li");
item.innerHTML = notice.title + ' <button onclick="editNotice(' + notice.id + ')">编辑</button> <button onclick="deleteNotice(' + notice.id + ')">删除</button>';
list.appendChild(item);
}
}
// 添加公告
function addNotice() {
var title = document.getElementById("notice-title").value;
var content = document.getElementById("notice-content").value;
// 生成新公告的id
var id = notices.length > 0 ? notices[notices.length-1].id + 1 : 1;
notices.push({id: id, title: title, content: content});
showNoticeList();
document.getElementById("add-notice-form").reset();
}
// 编辑公告
function editNotice(id) {
var notice = notices.find(function(item) { return item.id === id; });
document.getElementById("edit-notice-id").value = notice.id;
document.getElementById("edit-notice-title").value = notice.title;
document.getElementById("edit-notice-content").value = notice.content;
}
// 更新公告
function updateNotice() {
var id = document.getElementById("edit-notice-id").value;
var title = document.getElementById("edit-notice-title").value;
var content = document.getElementById("edit-notice-content").value;
var notice = notices.find(function(item) { return item.id === parseInt(id); });
if (notice) {
notice.title = title;
notice.content = content;
showNoticeList();
}
document.getElementById("edit-notice-form").reset();
}
// 删除公告
function deleteNotice(id) {
var index = notices.findIndex(function(item) { return item.id === id; });
if (index >= 0) {
notices.splice(index, 1);
showNoticeList();
}
}
// 页面加载时初始化
window.onload = function() {
showNoticeList();
}
</script>
</body>
</html>
```
在此示例中,我们通过一个包含按钮的列表来显示公告通知,每个按钮都可以对应一个公告的编辑和删除操作。同时,还提供了添加公告和编辑公告的表单,用户可以通过这些表单来实现公告通知的增加和修改。在JS代码中,我们使用了数组来存储公告列表数据,并通过各种操作函数来实现增加、修改和删除等功能。
阅读全文