网页应用与开发

简介: 网页应用与开发

它是一项综合性强、涉及多个技术领域的工作。它涵盖了前端开发、后端开发、数据库管理、用户体验设计等多个方面。在网页应用开发过程中,开发者需要利用HTMLCSSJavaScript等前端技术来构建网页界面,同时结合后端语言如PythonJavaPHP等处理服务器端的逻辑和数据存储。

以下是一个简单的网页应用开发案例,包括前后端的基本实现,并附带相关代码。


一、项目概述


本项目旨在开发一个简单的在线待办事项管理系统。用户可以通过该系统添加、查看和删除待办事项。系统分为前端和后端两部分,前端负责展示用户界面和处理用户交互,后端负责处理数据存储和逻辑运算。


二、前端开发


前端部分主要使用HTMLCSSJavaScript实现。

1. HTML结构

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>待办事项管理系统</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <div class="container">
        <h1>待办事项</h1>
        <ul id="todoList"></ul>
        <form id="todoForm">
            <input type="text" id="todoInput" placeholder="添加待办事项">
            <button type="submit">添加</button>
        </form>
    </div>
    <script src="script.js"></script>
</body>
</html>

2. CSS样式

/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 20px;
    box-sizing: border-box;
}
 
.container {
    max-width: 600px;
    margin: 0 auto;
}
 
#todoList {
    list-style: none;
    padding: 0;
}
 
#todoList li {
    margin-bottom: 10px;
    padding: 10px;
    background-color: #f4f4f4;
    border-radius: 5px;
}
 
#todoForm {
    margin-top: 20px;
}

3. JavaScript交互逻辑

// script.js
document.getElementById('todoForm').addEventListener('submit', function(event) {
    event.preventDefault(); // 阻止表单默认提交行为
    const todoInput = document.getElementById('todoInput');
    const todoText = todoInput.value.trim();
    
    if (todoText) {
        // 发送请求到后端添加待办事项
        fetch('/add-todo', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json'
            },
            body: JSON.stringify({ text: todoText })
        })
        .then(response => response.json())
        .then(data => {
            const todoItem = document.createElement('li');
            todoItem.textContent = data.text;
            todoItem.addEventListener('click', function() {
                // 发送请求到后端删除待办事项
               fetch(`/delete-todo/${data.id}`, { method: 'DELETE' })
                    .then(() => {
                        todoItem.remove();
                    });
            });
           document.getElementById('todoList').appendChild(todoItem);
            todoInput.value = ''; // 清空输入框
        })
        .catch(error => {
            console.error('Error:', error);
        });
    }
});

三、后端开发

后端部分使用Node.jsExpress框架实现,并假设使用MongoDB作为数据库。

1. 安装依赖

npm init -y
npm install express body-parser mongoose

2. Express服务器

// server.js
const express = require('express');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
 
mongoose.connect('mongodb://localhost/todos', { useNewUrlParser: true, useUnifiedTopology: true })
    .then(() => console.log('Connected to MongoDB'))
    .catch(err => console.error('Error connecting to MongoDB', err));
 
const app = express();
app.use(bodyParser.json());
app.use(express.urlencoded({ extended: true }));
 
// 路由处理函数...
 
app.listen(3000, () => console.log('Server is running on port 3000'));

3. 路由处理

// server.js (续)
const Todo = mongoose.model('Todo', new mongoose.Schema({
    text: String,
    completed: Boolean
}));
 
app.post('/add-todo', async (req, res) => {
    const todo = new Todo({ text: req.body.text, complete

 

目录
相关文章
|
druid 数据库
几行代码轻松复现druid连接泄露的BUG之keepalive
几行代码轻松复现druid连接泄露的BUG之keepalive
1544 6
|
机器学习/深度学习 监控 TensorFlow
使用Python实现深度学习模型:智能森林火灾预警系统
使用Python实现深度学习模型:智能森林火灾预警系统
315 5
|
网络协议 C语言
C语言 网络编程(十)TCP通信创建流程---客户端
在TCP通信中,客户端需通过一系列步骤与服务器建立连接并进行数据传输。首先使用 `socket()` 函数创建一个流式套接字,然后通过 `connect()` 函数连接服务器。连接成功后,可以使用 `send()` 和 `recv()` 函数进行数据发送和接收。最后展示了一个完整的客户端示例代码,实现了与服务器的通信过程。
|
机器学习/深度学习 算法 Ubuntu
dlib
【6月更文挑战第13天】
321 4
|
存储 安全 数据管理
解锁企业数据管理统一身份认证难题,EasyMR助力企业敏捷提效
在数字经济时代,企业面临数据量爆炸式增长的挑战。据IDC预测,2025年全球数据总量将超175 ZB。大数据成为决策关键,但传统管理模式已难以应对。袋鼠云推出的EasyManager平台专注于大数据集群全生命周期管理,提供从集群创建到智能监控的一站式解决方案,帮助企业高效处理海量数据,降低运营成本,提升业务敏捷性。同时,结合Kerberos、OpenLDAP和SSSD,EasyManager实现了统一身份认证与管理,确保企业在数据洪流中保持竞争力与安全性。
|
人工智能 安全 物联网
Linux操作系统的演变与未来:从开源精神到万物互联的基石###
本文是关于Linux操作系统的演变、现状与未来的深度探索。Linux,这一基于Unix的开源操作系统,自1991年由林纳斯·托瓦兹(Linus Torvalds)学生时代创造以来,已经彻底改变了我们的数字世界。文章首先追溯了Linux的起源,解析其作为开源项目的独特之处;随后,详细阐述了Linux如何从一个小众项目成长为全球最广泛采用的操作系统之一,特别是在服务器、云计算及嵌入式系统领域的主导地位。此外,文章还探讨了Linux在推动技术创新、促进协作开发模式以及保障信息安全方面的作用,最后展望了Linux在未来技术趋势中的角色,包括物联网、人工智能和量子计算等前沿领域的潜在影响。 ###
|
Java Linux Windows
system.getproperty详解
system.getproperty详解
|
数据采集 人工智能 运维
《文档智能 & RAG让AI大模型更懂业务》解决方案体验评测
【10月更文挑战第11天】随着人工智能技术的不断进步,AI在各个领域的应用也愈发广泛。近期,我有幸接触并部署了《文档智能 & RAG让AI大模型更懂业务》这一创新性解决方案。该方案旨在通过结合文档智能处理和检索增强生成(Retrieval-Augmented Generation, RAG)技术来提升AI大模型对特定业务知识的理解能力。接下来,我将从多个角度分享我的体验与思考。
318 2
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
407 3
|
虚拟化
虚拟机系统Win7与主机之间不能实现拖放的问题及解决方法
虚拟机系统Win7与主机之间不能实现拖放的问题及解决方法
586 4