javaweb 实验3

我发现了有些人喜欢静静看博客不聊天呐,

但是ta会点赞。

这样的人呢帅气低调有内涵,

美丽大方很优雅。

说的就是你,

不用再怀疑哦

实验三 Web基础-JavaScript

目的:

1、  理解和掌握Javascript基本语法

2、  掌握JavaScript操作表单对象的方法

3、  理解和掌握JavaScript的函数与事件

4、  理解JavaScript的内置对象

实验要求:

1、  使用JavaScript语言实现实验要求

2、  要求提交实验报告,将代码和实验结果页面截图放入报告中,附实验报告。文件命名规则”学号_姓名.rar”。

3、  实验心得。

实验过程:

1、函数与事件的使用。

编写一个html页面,使用Javascript完成数字的平方计算。完成下面的JS代码,并验证你的程序。

<!DOCTYPE html>

<html>

  <head>

  <script type="text/javascript">

  function  sqrt()

  {

                                         

  }

  </script>

  </head>

  <body>

  <form name="f1">

          请输入一个数字:<input type="text" value="" name="number"/><br>

          平方数:<input type="text" name="result"/>

            <input type="button" value="求平方" οnclick="sqrt()"/>

  </form>

  </body>

</html>

2、要求文本框中只能输入字母,参考如下:(可使用JavaScript内置对象String的方法测试数字和字母)

3、在文本框分别输入两个数,实现两个数的+、-、*、/运算,点击“=按钮将”结果显示在文本框中。界面设计可参考下图。注意对文本框输入的数据是否是数字要进行判断。

实验代码&结果:

第一题:

<!DOCTYPE html>
<html><head><script type="text/javascript">function sqrt(){// var num = document.getElementsByName("f1");  //类型NodeList(1) [form]// console.log(num);// var res = num*num;// document.getElementsByName("result") = res;  // console.log(document.getElementsByName("result"));  var num = document.getElementsByName("number")[0].value;console.log(num);var res = num * num;document.getElementsByName("result")[0].value = res;console.log(document.getElementsByName("result")[0].value);}</script></head><body><form name="f1">请输入一个数字:<input type="text" value="" name="number"/><br>平方数:<input type="text" name="result"/><input type="button" value="求平方" onclick="sqrt()"/></form></body>
</html>

【运行结果】

第二题:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>输入字母</title><script>function judge(){var str = document.getElementsByName("input")[0].value;//console.log(typeof(str));for(let i=0; i<str.length; i++){if(str[i] >= '0' && str[i] <= '9'){alert("你输入的字符串只能是字母");break;}}}</script>
</head>
<body><form name="f1">输入字母:<input type="text" value="" name="input"/><input type="button" value="确定" onclick="judge()"/></form>
</body>
</html>

【运行结果】

第三题:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>输入字母</title><script>function calculate(){let num1, num2;//读取是字符串, 需要转数字num1 = parseFloat(document.getElementsByName("num1")[0].value);num2 = parseFloat(document.getElementsByName("num2")[0].value);//提取运算符对应的value值:add、sub...//typeof: string:var operationValue = document.getElementById("calculator").value;// alert(typeof(operation));// alert(operationValue);if(operationValue == "add"){document.getElementsByName("result")[0].value = num1+num2;}else if(operationValue == "sub"){document.getElementsByName("result")[0].value = num1-num2;}else if(operationValue == "mul"){document.getElementsByName("result")[0].value = num1*num2;}else{if (num2 === 0) {alert("除数不能为0");return;}document.getElementsByName("result")[0].value = num1/num2;}}</script>
</head>
<body><form name="f1">请输入两个数进行简单的运算:<br><input type="text" value="" name="num1" /><!-- 下拉框 --><select id="calculator"> <option value="add">+</option><option value="sub">-</option><option value="mul">*</option><option value="div">/</option></select><input type="text" value="" name="num2" /><input type="button" value="=" onclick="calculate()"/><input type="text" value="" name="result" /></form>
</body>
</html>

【运行结果】

实验心得:

调试了挺久的,document.getElementsByName,或者ById都是返回的NodeList类型,要想获得整型:document.getElementsByName("number")[0].value

下拉框是找了半天的w3school,找不到就去csdn找了,然后就是怎么读取运算符的问题,document.getElementById("calculator")[0].value,四个读取后全是add(笑死🤣),把[0]去掉就没问题了。Csdn和科大讯飞AI都是用addEventListener里面用上匿名函数(类似lambda表达式)又复杂又不行,一行多简单啊,直接搞定了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/434040.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html+css+js实现Pagination 分页

效果图 HTML部分 <body><div class"pagination"><button class"prev"><</button><ul><li class"active">1</li><li>2</li><li>3</li><li>4</li><li>5…

敏捷开发与DevOps的有机结合

在当今快速变化的技术环境中&#xff0c;软件开发团队面临着前所未有的挑战。客户需求不断变化&#xff0c;市场竞争激烈&#xff0c;技术更新速度加快&#xff0c;这些因素都要求开发团队具备高度的敏捷性和高效的运营能力。为了应对这些挑战&#xff0c;越来越多的企业选择将…

024.PL-SQL进阶—游标

课 程 推 荐我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448;入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448;虚 拟 环 境 搭 建 &#xff1a;&#x1…

JAVA红娘婚恋相亲交友系统源码全面解析

在数字化时代&#xff0c;红娘婚恋相亲交友系统成为了连接单身男女的重要桥梁。JAVA作为一种流行的编程语言&#xff0c;为开发这样的系统提供了强大的支持。编辑h17711347205以下是对JAVA红娘婚恋相亲交友系统源码的全面解析&#xff0c;以及三段示例代码的展示。 系统概述 …

【Gitee自动化测试4】本地Git分支的增删查,本地Git分支中文件的增删查,本地文件的暂存/提交,本地分支的推送

一、流程 本地创建分支&#xff0c;设定连接什么云分支本地创建文件&#xff0c;暂存、提交–>本地分支本地分支推送所有修改–>云仓库 二、分支概念 在版本回退里&#xff0c;每次提交&#xff0c;git都把它们串成一条时间线&#xff0c;这条时间线可以理解为是一个分…

Verilog基础:时序调度中的竞争(四)(描述时序逻辑时使用非阻塞赋值)

相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html?spm1001.2014.3001.5482 作为一个硬件描述语言&#xff0c;Verilog HDL常常需要使用语句描述并行执行的电路&#xff0c;但其实在仿真器的底层&#xff0c;这些并行执行的语句是有先后顺序…

论文阅读:LM-Cocktail: Resilient Tuning of Language Models via Model Merging

论文链接 代码链接 Abstract 预训练的语言模型不断进行微调&#xff0c;以更好地支持下游应用。然而&#xff0c;此操作可能会导致目标领域之外的通用任务的性能显著下降。为了克服这个问题&#xff0c;我们提出了LM Cocktail&#xff0c;它使微调后的模型在总体上保持弹性。…

文章解读与仿真程序复现思路——中国电机工程学报EI\CSCD\北大核心《考虑异步区域调频资源互济的电能、惯性与一次调频联合优化出清模型》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

Spring Boot助力:小徐影院管理系统

第二章开发技术介绍 2.1相关技术 小徐影城管理系统是在Java MySQL开发环境的基础上开发的。Java是一种服务器端脚本语言&#xff0c;易于学习&#xff0c;实用且面向用户。全球超过35&#xff05;的Java驱动的互联网站点使用Java。MySQL是一个数据库管理系统&#xff0c;因为它…

python学习第十二节:python开发图形界面

python学习第十二节&#xff1a;python开发图形界面 创建一个窗口实例化窗口对象调用窗口设置窗口大小设置窗口的标题设置窗口图标否能够改变窗口设置窗口的背景 创建容器组件容器组件的介绍组件参数的介绍label标签label添加标签控件 label添加标签定位label的relief参数label…

无人机之模拟图传篇

无人机的模拟图传技术是一种通过模拟信号传输图像数据的方式&#xff0c;它通常使用无线电模块或专用通信协议进行数据传输。 一、基本原理 模拟图传技术的工作原理是将摄像头或相机设备采集到的图像数据&#xff0c;通过模拟信号的形式进行传输。这些模拟信号在传输过程中可能…

9.26 Buu俩题解

[CISCN2019 华东北赛区]Web2 看wp写完之后写的 知识点 存储型XSS与过滤绕过sql注入 题解 好几个页面&#xff0c;存在登录框可以注册&#xff0c;存在管理员页面(admin.php) ->既然存在管理员页面&#xff0c;且直接访问admin.php提示我们 说明存在身份验证&#xff0…

安全教育培训小程序系统开发制作方案

安全教育培训小程序系统是为了提高公众的安全意识&#xff0c;普及安全知识&#xff0c;通过微信小程序的方式提供安全教育培训服务&#xff0c;帮助用户了解并掌握必要的安全防范措施。 一、目标用户 企业员工&#xff1a;各岗位员工&#xff0c;特别是IT部门、财务、行政等对…

你们猜!吊打Oracle的国产数据库有哪几家?

今天闲暇之余看到某vx群聊得很火热&#xff0c;这个群聚集了国内不少数据库大咖&#xff0c;其中大家聊到国产数据库遥遥领先了。 最开始主要是一个朋友提到目前很多企业拍板的人并不懂数据库&#xff0c;甚至很多知名数据库都没听过。 然后大家就开始聊到国产数据库了&#xf…

《微信小程序实战(4) · 地图导航功能》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

Python(六)-拆包,交换变量名,lambda

目录 拆包 交换变量值 引用 lambda函数 lambda实例 字典的lambda 推导式 列表推导式 列表推导式if条件判断 for循环嵌套列表推导式 字典推导式 集合推导式 拆包 看一下在Python程序中的拆包&#xff1a;把组合形成的元组形式的数据&#xff0c;拆分出单个元素内容…

电商大变革!TikTok携手亚马逊重塑购物边界,开启海外即看即买新篇章

在电商界&#xff0c;亚马逊还是一众电商平台难以超越的存在。据外媒报道&#xff0c;最新预测显示&#xff0c;预计到2024年底&#xff0c;亚马逊全球将拥有970万卖家&#xff0c;活跃卖家将达到190万。 TikTok携手亚马逊重塑购物边界&#xff0c;开启海外即看即买新篇章 在数…

RK3568 android11 适配鼎桥MT5710-CN 5G模块

一,概述 鼎桥MT571X设备和Android系统主要通过USB接口进行数据通信,Android系统上的Linux内核需要根据鼎桥模块设备上报的USB设备接口加载USB驱动,USB驱动正确加载后,鼎桥模块才能正常工作。 Android系统中支持鼎桥模块设备相关的Linux内核驱动架构,如下图所示: 在Lin…

动手学深度学习(李沐)PyTorch 第 4 章 多层感知机

4.1 多层感知机 隐藏层 我们在 3.1.1.1节中描述了仿射变换&#xff0c; 它是一种带有偏置项的线性变换。 首先&#xff0c;回想一下如 图3.4.1中所示的softmax回归的模型架构。 该模型通过单个仿射变换将我们的输入直接映射到输出&#xff0c;然后进行softmax操作。 如果我们…

21天全面掌握:小白如何高效学习AI绘画SD和MJ,StableDiffusion零基础入门到精通教程!快速学习AI绘画指南!

‍‍大家好&#xff0c;我是画画的小强。 今天给大家分享一些我长期以来总结的AI绘画教程和各种AI绘画工具、模型插件&#xff0c;还包含有视频教程 AI工具&#xff0c;免费送&#x1f447;&#x1f447;‍‍ 这份完整版的AI绘画全套学习资料已经上传CSDN&#xff0c;朋友们如…