首页 > 其他分享 >留言板

留言板

时间:2023-06-30 13:57:14浏览次数:22  
标签:todo const text app 10px border 留言板

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Todo List</title>
<style>
body {
background-color: #f6f6f6;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
margin: 0;
padding: 0;
}

.container {
max-width: 600px;
margin: 20px auto;
background-color: #fff;
border-radius: 10px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
padding: 20px;
}

.header {
text-align: center;
margin-bottom: 20px;
color: #3f51b5;
}

.todo-form {
display: flex;
flex-direction: column;
margin-bottom: 20px;
}
.name{
padding: 10px;
border: none;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
margin-bottom: 10px;
}
.account{
padding: 10px;
border: none;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
margin-bottom: 10px;
}
.todo-input {
padding: 10px;
border: none;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
margin-bottom: 10px;
}

.todo-date {
padding: 10px;
border: none;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
margin-bottom: 10px;
}

.error-message {
color: #ff6b6b;
font-size: 14px;
margin-bottom: 10px;
}

.todo-button {
padding: 10px 20px;
border: none;
border-radius: 5px;
background-color: #3f51b5;
color: #fff;
cursor: pointer;
}

.todo-list {
list-style: none;
padding: 0;
}

.todo-item {
display: flex;
align-items: center;
padding: 10px;
border-radius: 5px;
margin-bottom: 10px;
background-color: #e8e8e8;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.todo-item:last-child {
margin-bottom: 0;
}

.todo-item-checkbox {
margin-right: 10px;
}

.todo-item-text {
flex: 1;
color: #3f51b5;
font-weight: bold;
}

.todo-item-delete {
padding: 5px 10px;
border: none;
border-radius: 5px;
background-color: #ff6b6b;
color: #fff;
cursor: pointer;
transition: background-color 0.3s;
}

.todo-item-delete:hover {
background-color: #ff4f4f;
}
</style>
</head>
<body>
<div class="container">
<h1 class="header">留言板</h1>
<form class="todo-form" id="todoForm">



<!-- <input type="text" class="name" placeholder="请输入你的昵称" id="name">-->
<input type="text" class="todo-input" placeholder="请输入你的留言内容" id="todoInput">
<input type="date" class="todo-date" id="todoDate">
<button type="submit" class="todo-button">Add</button>
<div id="errorMessage" class="error-message"></div>
</form>
<ul class="todo-list" id="todoList"></ul>
</div>
<script src="/bbb/jquery/dist/jquery.js"></script>
<script>




$(function() {
$('#todoForm').submit(function(event) {
event.preventDefault()
//
/* const todoName=$('#name').val().trim()
const todoAccount = $('#account').val().trim()*/


const todoText = $('#todoInput').val().trim()
const todoDate = $('#todoDate').val().trim()
/*
if (todoName===null || todoAccount===null) {
$('#errorMessage').text('请输入内容.')
return
}*/

if (todoText===null) {
$('#errorMessage').text('请输入内容.')
return
}

if (!todoDate) {
$('#errorMessage').text('Please enter todo task and date.')
return
}
/*if (!todoText || !todoDate) {
$('#errorMessage').text('Please enter todo task and date.')
return
}*/
if (new Date(todoDate) < new Date()) {
$('#errorMessage').text('The deadline cannot be in the past.')
return
}

$('#errorMessage').text('')

const todoItem = $('<li>').addClass('todo-item')
const todoCheckbox = $('<input>').attr({
type: 'checkbox',
class: 'todo-item-checkbox'
})
const todoTextEl = $('<span>').addClass('todo-item-text').text(todoText)
const todoDateEl = $('<span>').addClass('todo-item-date').text(todoDate)
const todoDeleteBtn = $('<button>').addClass('todo-item-delete').text('Delete')

todoItem.append(todoCheckbox, todoTextEl, todoDateEl, todoDeleteBtn)
$('#todoList').append(todoItem)


/*$('#name').val('')
$('#account').val('')*/


$('#todoInput').val('')
$('#todoDate').val('')

$.ajax({
type: 'post',
url: '/app/tasks',
data: JSON.stringify({

// name: todoName,
// text: todoAccount,

name: todoText,
date: todoDate
}),
dataType: 'object',
contentType: 'apply/object',
success: function(response) {
console.log(response)
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown)
}
})
})

$(document).on('click', '.todo-item-delete', function() {
if (confirm('Are you sure you want to delete this todo?')) {
$(this).parent().remove()
}
})
})
</script>
</body>
</html>

server js:
const express=require('express')

const app=express()

app.engine('html',require('express-art-template'))


app.use(express.urlencoded({extended:false}))
app.use(express.json())

//开放node_modules,public两个文件夹的权限,允许用户查看
app.use('/bbb',express.static('node_modules'))


app.get('/',(req,res) =>{
res.render('login.html')
})

let tasks = [];

app.post('/app/tasks', (req, res) => {
const { name, date } = req.body;
tasks.push({ name, date });
res.send({ message: 'Task added success.' });
});

app.get('/app/tasks', (req, res) => {
res.send(tasks);
});


app.listen(3020,()=>console.log('app listening on http://localhost:3020'))





标签:todo,const,text,app,10px,border,留言板
From: https://www.cnblogs.com/ckyjbd/p/17516593.html

相关文章

  • 个人博客留言板功能实现
    ZY知识库留言板功能实现前言因为这个博客是用的大佬的开源项目,我也是用自己的想法改了很多东西,虽然可能写的不是很好,但是我自己想要的效果实现了,开源项目不就是用来学习的嘛,所以不能一层不变,之前首页改版、评论功能我都没有写文章,这次抽空更新了留言板功能,来水一篇文章。留言板......
  • NLP自然语言处理—主题模型LDA案例:挖掘人民网留言板文本数据|附代码数据
    全文链接:http://tecdat.cn/?p=2155最近我们被客户要求撰写关于NLP自然语言处理的研究报告,包括一些图形和统计输出。随着网民规模的不断扩大,互联网不仅是传统媒体和生活方式的补充,也是民意凸显的地带。领导干部参与网络问政的制度化正在成为一种发展趋势,这种趋势与互联网发展的时......
  • NLP自然语言处理—主题模型LDA案例:挖掘人民网留言板文本数据|附代码数据
    从上图可以看出不同地区留言板的情感倾向分布,总的来说,负面情感留言数目和积极情感相差不多,负面情感留言较多,占比46%,积极情感留言占比42%,中立情感的留言占比11%。从地区来看,活跃在各大媒体的“朝阳区群众”留言数目也是最多的,其次是海淀区,昌平区。因此,从情感分布来看大部分留言还......
  • [从0开始]PHP+phpstudy留言板项目搭建教程及报错详析
    [从0开始]PHP+phpstudy留言板项目搭建教程及报错详析基础知识及工具准备基础知识:四种语言PHPPHP是在服务器端执行的脚本语言,适用于Web开发并可嵌入HTML中。学习网站:PHP教程|菜鸟教程SQLSQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统......
  • 《渗透测试》安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引用 202
    PHPStorm:专业PHP开发IDEPhpStudy:ApacheMYSQL环境NavicatPremium:全能数据库管理工具 #数据导入-mysql架构&库表列1、数据库名,数据库表名,数据库列名2、数据库数据,格式类型,长度,键等 #数据库操作-mysqli函数&增删改查PHP函数:连接,选择,执行,结果,关闭等参考:https://......
  • 留言板
    “天使从空中飞过,听从神的旨意隐去双翅,像乘着降落伞一般飘落到世界的各个角落。我落在北国的雪原,你落在南国的蜜柑田,而这群少年落在了上野公园。我们之间的差别仅仅如此。......
  • 基于JSP+javaBean的留言板--改进(附源码)
    一、系统的主要功能和特点系统主要实现了以JSP和JavaBean为基础的留言板。主要包括登录、登陆检查、增加留言、查看全部留言信息、查看指定留言信息等功能实现了数据的读......
  • 逆向软件设计和开发——留言板系统
    该系统实现了留言板的登陆和注册,留言的增加和读取。采用mysql数据库,把用户的信息(用户名、id(唯一)、密码)和留言(标题、内容、作者昵称、留言时间)分别储存在”yonghu”和”mess......
  • 制作自己的留言板(原创)
    今天自己制作了一个留言板,总结步骤如下:1、找到模板目录中的single.php文件,复制single.php并重命名为single-liuyan.php2、在single-liuyan.php最顶部添加如下代码(用于模板......
  • NLP自然语言处理—主题模型LDA案例:挖掘人民网留言板文本数据|附代码数据
    全文链接:tecdat.cn/?p=2155最近我们被客户要求撰写关于NLP自然语言处理的研究报告,包括一些图形和统计输出。随着网民规模的不断扩大,互联网不仅是传统媒体和生活方式的补......