Web开发及人机交互导论 实验四 表单

简介: Web开发及人机交互导论 实验四 表单

一、实验目的


理解表单的概念,熟练掌握表单创建方法。

掌握表单相关属性设置。

掌握表单输人、多行输人、列表框等对象属性的设置。

学会使用域和域标题来分组表单元素。

学会设计用户登录、用户注册、网上调查问卷等类似页面。


二、实验环境


Windows10系统下的H Builder X


三、实验步骤


项目一:留言板设计——“中国科学技术协会科技工作者建言”

2bb06fe783db446c8b65c953cac9968c.png

本实验主要涉及到表单的form标记、table标记、style标记,以及表单元素,下面逐一进行解释并进行实验操作:


(一)form标记:


<form> 标签用于为用户输入创建 HTML 表单。表单能够包含 input 元素,比如文本字段、复选框、单选框、提交按钮等等。表单还可以包含 menus、textarea、fieldset、legend 和 label 元素。表单用于向服务器传输数据。

本实验中,主要通过表单进行填写数据,并完成用户前端与服务器后端的交互。


405b9ba04b9c49a2a45f8c0dd587a364.png


(二)table标记:


<table> 标签定义 HTML 表格。简单的 HTML 表格由 table 元素以及一个或多个 tr、th 或 td 元素组成。tr 元素定义表格行,th 元素定义表头,td 元素定义表格单元。更复杂的 HTML 表格也可能包括 caption、col、colgroup、thead、tfoot 以及 tbody 元素。本实验中通过table进行嵌套,实现表格的对齐,并进行布局。

先通过一个table实现了最上方的标题:


f1685b01f0504550b32b46b545e54988.png


并使用事先定义好的样式,完成对背景颜色,高,宽的设置


e45c842988a547d0a98fc870c57a1f5e.png

效果如下:

4d261df3a74f4e369ff608dae8c4c8a1.png


接着,通过table实现留言板上每一行的定义,每一行都在一个大的表格中,进而通过嵌套,实现了对每一行的格式对齐。其中,对文字对齐,文字的颜色和样式进行定义, 在对姓名、电子邮件、分类、留言等栏目中,均使用此方式进行定义:


453edc5452bf40458cb2c36c13a86b1e.png


(三)style标记:


文章中表格内的样式都需要通过style来进行定义,通过style定义两个标题:


b487ecc5396b46bb804305dacd4febc4.png


对表格内样式的定义(姓名、电子邮件和分类采用第一个,留言采用第二个)



e3081a84fa3840bdb8760645f8bf4fba.png

(四)表单元素:


表单中为了成功实现与用户的交互,提供了多种表单元素,如:<input> 元素,<select> 元素,<textarea> 元素,<button> 元素。

①<input> 元素:

<input> 元素实现了表单中对数据的输入的操作,并且,在实际使用中,可以通过对<input> 元素不同的 type 属性,实现多种形态的输入操作。

对姓名和邮箱的输入,类型为“text”形,name为返回服务器时的名,size为空的大小。

fcd6d9cf88304deb86e2dfc7f9dbd028.png

529a841a211446a6be654095f3b6d322.png


②<select> 元素:

<select> 元素实现了下拉菜单的功能,在选择中,可以设置默认值。留言板中留言类型的实现是通过<select> 元素实现的。其中,未选择时默认为空白,可以用selected关键字进行定义。



2ee118ddaf0443a290c30c9e3c301174.png


③<textarea> 元素:

<textarea> 元素实现了输入文本框,在有较多文字要输入时选择<textarea> 元素会方便很多,留言板的留言功能是通过<textarea> 元素实现的。其中rows和cols定义了列数与行数,进而控制文本框的大小。


51ef06a8ba914057a4935750390feed2.png


④<button> 元素:

<button> 元素实现了按钮的功能,可以通过在<button> 元素内部对type的修改实现不同功能,也可以放置内容,比如文本或图像。留言板的清空和提交按钮需要利用<button> 元素进行实现。当type为submit时为提交属性按钮,当type属性为reset时为重置按钮。


c27d7eecd3c440809f3ce80fb4095445.png

(五)结尾处:


在结尾处采用无序列表从而实现提示栏的功能。


0b0667a52e9a4d8db6f1038b1763da2b.png

(六)代码及网页展示效果:


feef1944d86447e5ad608a5aaf3fcb94.png

c1d0bb02656a47ce9539011bd9e911e7.png


3e8817127af4475b857d8c4b0a8aa9f9.png







项目二:大学生暑期社会实践调查问卷

46139347770e499d8ac3aace446b3899.png



大致与实验一的内容相应,也是利用表单及布局对页面进行设置。


(一)图层div标记:


div标签,称为区隔标记。作用是设定字、画、表格等的摆放位置。div元素,是用来为HTML文档内的内容提供结构和背景的元素。div的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由div标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。

432243da7a284bebb44d8f2059c59239.png

cc698b8d116b44f28796a235508f463a.png


(二)表单form标记:


与实验一相同,这里也通过form实现用户前端与服务器后端的交互


376918b9bd074bbb89bdf28220bc7aec.png


(三)表格table标记:


与项目一相同,本项目也通过表格进行布局,实现各个问题的对齐。每一个问题中的每一个选项都是在问题的table标记中。下面以“学校”为例进行展示。


a75d0936c34c4160a89271d6da95211f.png

(四)样式style标记


style标记提供了一种改变所有 HTML 元素的样式的通用方法。样式是一种新的首选的改变 HTML 元素样式的方式。通过 HTML 样式,能够通过使用 style 属性直接将样式添加到 HTML 元素,或者间接地在独立的样式表中(CSS 文件)进行定义。


ccd9db19a86d4794a03f4e02d8771d1b.png


(五)表单元素


表单中为了成功实现与用户的交互,提供了多种表单元素,如:<input> 元素,<select> 元素,<textarea> 元素,<button> 元素。

①<input> 元素:

<input> 元素实现了对学校的输入,类型为“text”型,name为返回服务器时的名,size为空的大小。


845d2c4b8e724117add9c690f3f0a2a6.png


与项目一不同的是,将类型设置为“checkbox”型时,可以采用复选框标记,类似于选择题中的多项选择题。

在项目二中,“选择专业的原因”采用了复选框。


72370983e9434f56b9a212b93475f436.png

②<textarea> 元素:

<textarea> 元素实现了输入文本框,在有较多文字要输入时选择<textarea> 元素会方便很多,问卷的建议功能是通过<textarea> 元素实现的。其中rows和cols定义了列数与行数,进而控制文本框的大小。


③<button> 元素:

<button> 元素实现了按钮的功能,可以通过在 <button> 元素内部对type的修改实现不同功能,也可以放置内容,比如文本或图像。留言板的清空和提交按钮需要利用<button> 元素进行实现。当type为submit时为提交属性按钮,当type属性为reset时为重置按钮。

bf101c28b7a747279700a63a684d450b.png


(六)代码及网页展示效果:

源代码:

e39530ccdfea42c5a6c557a00f707c11.png

39c3ef403a4841c0a370561af5577c35.png

d65abbc44f4541ca923644f8da2b8609.png



四、结果与分析


如果想获取用户自主提交的信息,可以采用“表单”来进行信息收集

在使用表单过程中,可以通过多个表单元素如:<input> 元素,<select> 元素,<textarea> 元素,<button> 元素等等来实现一些操作。

表单元素有很多功能,比如通过修改<input> 元素中type的值,可以实现单行文本框、复选框,单选等功能

在使用表格进行嵌套时要尤其注意嵌套的关系否则可能会出现排版出错的情况


五、心得体会


在编写页面时,如果想提高交互性,便于用户前端与服务器后端进行交互,可以采用表单的方式。

对格式等定义不清楚,在实验过程中,由于不清楚定义边框的格式,反复调试很长时间才得到解决。

在进行页面元素调试时,比如height这类元素,要做到一边调,一边看,再进行微调。

与单调的页面相比,这样采用多种表格进行的设计,使得页面设计更方便更美观,更能吸引读者去阅读。

相关文章
|
24天前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
86 3
|
6天前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
78 44
|
2天前
|
前端开发 API 开发者
Python Web开发者必看!AJAX、Fetch API实战技巧,让前后端交互如丝般顺滑!
在Web开发中,前后端的高效交互是提升用户体验的关键。本文通过一个基于Flask框架的博客系统实战案例,详细介绍了如何使用AJAX和Fetch API实现不刷新页面查看评论的功能。从后端路由设置到前端请求处理,全面展示了这两种技术的应用技巧,帮助Python Web开发者提升项目质量和开发效率。
7 1
|
4天前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
7天前
|
安全 数据库 开发者
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第26天】本文详细介绍了如何在Django框架下进行全栈开发,包括环境安装与配置、创建项目和应用、定义模型类、运行数据库迁移、创建视图和URL映射、编写模板以及启动开发服务器等步骤,并通过示例代码展示了具体实现过程。
24 2
WK
|
7天前
|
安全 Java 编译器
C++和Java哪个更适合开发web网站
在Web开发领域,C++和Java各具优势。C++以其高性能、低级控制和跨平台性著称,适用于需要高吞吐量和低延迟的场景,如实时交易系统和在线游戏服务器。Java则凭借其跨平台性、丰富的生态系统和强大的安全性,广泛应用于企业级Web开发,如企业管理系统和电子商务平台。选择时需根据项目需求和技术储备综合考虑。
WK
10 0
|
30天前
|
设计模式 测试技术 持续交付
开发复杂Web应用程序
【10月更文挑战第3天】开发复杂Web应用程序
33 2
|
1月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
41 3
|
9天前
|
JavaScript 前端开发 Java
SpringBoot_web开发-webjars&静态资源映射规则
https://www.91chuli.com/ 举例:jquery前端框架
10 0
|
2月前
|
开发框架 JSON 缓存
震撼发布!Python Web开发框架下的RESTful API设计全攻略,让数据交互更自由!
在数字化浪潮推动下,RESTful API成为Web开发中不可或缺的部分。本文详细介绍了在Python环境下如何设计并实现高效、可扩展的RESTful API,涵盖框架选择、资源定义、HTTP方法应用及响应格式设计等内容,并提供了基于Flask的示例代码。此外,还讨论了版本控制、文档化、安全性和性能优化等最佳实践,帮助开发者实现更流畅的数据交互体验。
72 1