JavaScript弹出对话框的三种方式


Posted in Javascript onMarch 23, 2016

学习过js的小伙伴会发现,我们在一些实例中用到了alert()方法、prompt()方法、prompt()方法,他们都是在屏幕上弹出一个对话框,并且在上面显示括号内的内容,使用这种方法使得页面的交互性更精彩,实际上我们经常会在进行网页浏览时简单这种类型的对话框,在用户与应用程序进行双向交流时,经常要用到对话框。

javascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prompt()来获得,可以利用这些对话框来完成js的输入和输出,实现与用户能进行交互的js代码。

今天小编就来简单介绍一下js中的三种弹出对话框,小编先单独对这几个方法进行详细讲解,接着,将这几个方法进行对比,好了,开始我们的js之旅吧`(*∩_∩*)′......

第一种:alert()方法

alert()方法是这三种对话框中最容易使用的一种,她可以用来简单而明了地将alert()括号内的文本信息显示在对话框中,我们将它称为警示对话框,要显示的信息放置在括号内,该对话框上包含一个“确认”按钮,用户阅读完所显示的信息后,只需单击该按钮就可以关闭对话框。下面来看一个使用alert()方法的例子,代码如下所示:

<html>
<head>
<title>编写html页面</title>
<script language="javascript"> //JavaScript脚本标注
alert("上联:山石岩下古木枯");//在页面上弹出上联
alert("下联:白水泉边少女妙");//在页面上弹出下联
</script>
</head>
</html>

执行上面的小例子,在页面上弹出对话框并显示一句话“上联:山石岩下古木枯”,如下所示:

JavaScript弹出对话框的三种方式

接着,单击“确认”按钮后再显示第二个对话框并显示“白水泉边少女妙!”,效果如下;

JavaScript弹出对话框的三种方式

在页面上弹出对话框并显示一句话“上联:山石岩下古木枯”,单击“确认”按钮后再显示第2个对话框并显示“白水泉边少女妙!”我们来分析一下这个小例子:

a、在<script>脚本块中两次调用alert()方法;

b、在每个alert()括号内分别添加了一段文本信息,运行出现如下图所示的页面,当使用鼠标单击页面上的“确定”按钮后,出现第二个页面,再点击“确定”按钮后就关闭页面上的对话框。 注意:两个对话框是分别显示的,而不是一个覆盖另一个,这是因为js实在执行完第一个alert()并等到用户点击“确认”按钮之后才去执行第二个alert()的。

alert()是js的window对象的一个方法,调用时可以写成window.alert(),也可以写成alert(),功能都是产生一个带确认按钮的对话框,上面显示括号内的信息,

第二种:confirm()方法

confirm()方法与alert()方法的使用十分类似,不同点是在该种对话框上除了包含一个“确认”按钮外,还有一个“取消”按钮,这种对话框称为确认对话框,在调用window对象的confirm()方法以及后面介绍的prompt()方法时也可以不写window。下面来看一个关于confirm()的小例子,代码如下所示:

<html>
<head>
<title>编写html页面</title>
<script language="javascript"> //js脚本标注
confirm("上联:一但重泥拦子路;下联:两岸夫子笑颜回"); //在页面上弹出确认对话框
</script>
</head>
</html>

显示效果如下:

JavaScript弹出对话框的三种方式

分析一下这个小例子:

a、在<script>脚本块中添加confirm()方法、

b、在confirm()括号内添加了一段文本信息,运行效果如上图所示,如果用户单击“确认”按钮,则confirm()方法会返回true,如果用户单击“取消”按钮,则confirm()方法会返回false,无论用户选择哪个按钮,都会关闭对话框,而继续执行javascript代码。单击“确认”或“取消”按钮都是关闭对话框,似乎没有什么区别,实际上,无论是单击“确认”或“取消”按钮都会返回一个布尔值,这样就 可以再幕后有一些js代码来发挥按钮的作用,请大家看下面的例子,体会使用confirm()返回布尔值的妙处。代码如下:

<html>
<head>
<title>编写html页面</title>
<script language="javascript"> //js脚本标注
var con;
con=confirm("你喜欢玫瑰花么?"); //在页面上弹出对话框
if(con==true)alert("非常喜欢!");
else alert("不喜欢!");
</script>
</head>
</html>

我们来分析一下这个小例子:

a、在<script>脚本块中声明了一个变量con。

b、con=confirm()一句将confirm()方法返回的布尔值赋给con。

c、通过if语句来使用con的值,分别执行不同的语句;执行的效果如下:

JavaScript弹出对话框的三种方式

如果单击页面的确认框上的“确定”按钮后,出现如下图所示的页面:

JavaScript弹出对话框的三种方式

如果单击“取消”按钮,则出现如下图所示的页面:

JavaScript弹出对话框的三种方式

第三种: prompt()方法

alert()方法和confirm()方法的使用十分类似,都是仅仅显示已有的信息,但用户不能输入自己的信息,但是prompt()可以做到这点,她不但可以显示信息,而且还提供了一个文本框要求用户使用键盘输入自己的信息,同时她还包含“确认”或“取消”两个按钮,如果用户“确认”按钮,则prompt()方法返回用户在文本框中输入的内容(是字符串类型)或者初始值(如果用户没有输入信息);如果用户单击“取消”按钮,则prompt()方法返回null,我们称这种对话框为提示框,在这三种对话框中,她的交互性最好。

看下面一个小例子:在页面上两次弹出提示对话框,使用户能输入有关信息,代码如下:

<html>
<head>
<title>编写html页面</title>
<script language="javascript"> //js脚本标注
var name,age;
name=prompt("请问你叫什么名字?"); /*在页面上弹出提示对话框,
将用户输入的结果赋给变量name*/
alert(name); //输出用户输入的信息
age=prompt("你今年多大了?","请在这里输入年龄"); /*在页面上再一次弹出提示对话框,
讲用户输入的信息赋给变量age*/
alert(age)//输出用户输入的信息
</script>
</head>
</html>

运行上面的程序,效果如下所示:

JavaScript弹出对话框的三种方式

点击确定,会有这么惊喜nie:

JavaScript弹出对话框的三种方式

我们再点击确定按钮:

JavaScript弹出对话框的三种方式

再点击确定按钮:

JavaScript弹出对话框的三种方式

分析一下这个小例子

a、在<script>脚本块中添加了两个prompt()方法。

b、在第一个prompt()括号内添加了一段文本信息。

c、name=prompt()一句是将用户在文本框中输入的信息赋给变量name。

alert()、confirm()、prompt()的区别和联系:

警告框alert()

alert是警告框,只有一个按钮“确定”无返回值,警告框经常用于确保用户可以得到某些信息。当警告框出现后,用户需要点击确定按钮才能继续进行操作。语法:alert("文本")。

确认框confirm()

confirm是确认框,两个按钮,确定或者取消,返回true或false。确认框用于使用户可以验证或者接受某些信息。当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。如果用户点击确认,那么返回值为 true。如果用户点击取消,那么返回值为 false。语法:confirm("文本")

提示框prompt()

prompt是提示框,返回输入的消息,或者其默认值提示框经常用于提示用户在进入页面前输入某个值。当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。语法:prompt("文本","默认值")

本文主要介绍了javascript中的三种弹出对话框,分别是alert()方法,confirm()方法,prompt()方法,小编先对这几个方法进行了详细的单独介绍,紧接着,将这几个方法进行对比,除这三个弹出对话框之外,我们还可以使用document.write()直接将消息显示在页面上,BS学习,未完待续......同时感谢大家一直以来对三水点靠木网站的支持!

Javascript 相关文章推荐
游戏人文件夹程序 ver 4.03
Jul 14 Javascript
默认让页面的第一个控件选中的javascript代码
Dec 26 Javascript
hover的用法及live的用法介绍(鼠标悬停效果)
Mar 29 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
Mar 23 Javascript
jQuery鼠标事件汇总
Aug 30 Javascript
基于jQuery插件jqzoom实现的图片放大镜效果示例
Jan 23 Javascript
vue数据双向绑定的注意点
Jun 23 Javascript
详解vue+css3做交互特效的方法
Nov 20 Javascript
如何根据业务封装自己的功能组件
Apr 19 Javascript
JavaScript变量作用域及内存问题实例分析
Jun 10 Javascript
JavaScript和TypeScript中的void的具体使用
Sep 12 Javascript
解决layui富文本编辑器图片上传无法回显的问题
Sep 18 Javascript
JS随机洗牌算法之数组随机排序
Mar 23 #Javascript
JavaScript学习笔记之取数组中最大值和最小值
Mar 23 #Javascript
JavaScript学习笔记之数组去重
Mar 23 #Javascript
JavaScript学习笔记之数组随机排序
Mar 23 #Javascript
JavaScript学习笔记之数组求和方法
Mar 23 #Javascript
JavaScript学习笔记之数组的增、删、改、查
Mar 23 #Javascript
高效利用Angular中内置服务$http、$location等
Mar 22 #Javascript
You might like
PHP 中的批处理的实现
2007/06/14 PHP
php下HTTP Response中的Chunked编码实现方法
2008/11/19 PHP
php页面缓存ob系列函数介绍
2012/10/18 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
2013/06/13 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
2014/11/04 PHP
PHP处理数组和XML之间的互相转换
2016/06/02 PHP
yii2利用自带UploadedFile实现上传图片的示例
2017/02/16 PHP
PHP关于foreach复制知识点总结
2019/01/28 PHP
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
javascript 实现父窗口引用弹出窗口的值的脚本
2007/08/07 Javascript
Javascript图像处理—亮度对比度应用案例
2013/01/03 Javascript
JavaScript设计模式之单件模式介绍
2014/12/28 Javascript
JavaScript插件化开发教程 (四)
2015/01/27 Javascript
js实现浏览器窗口大小被改变时触发事件的方法
2015/02/02 Javascript
jQuery中extend函数的实现原理详解
2015/02/03 Javascript
jQuery获取DOM节点实例分析(2种方式)
2015/12/15 Javascript
基于JavaScript实现评论框展开和隐藏功能
2017/08/25 Javascript
判断div滑动到底部的scroll实例代码
2017/11/15 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
2018/08/24 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
vue 查看dist文件里的结构(多种方式)
2020/01/17 Javascript
解决vue项目获取dom元素宽高总是不准确问题
2020/07/29 Javascript
vue递归获取父元素的元素实例
2020/08/07 Javascript
[01:07:41]IG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python编程中对文件和存储器的读写示例
2016/01/25 Python
python3 deque 双向队列创建与使用方法分析
2020/03/24 Python
美国单身专业人士在线约会网站:EliteSingles
2019/03/19 全球购物
高中军训感想800字
2014/02/23 职场文书
供用电专业求职信
2014/07/07 职场文书
总经理助理岗位职责范本
2014/07/20 职场文书
保险公司演讲稿
2014/09/02 职场文书
2015小学教师德育工作总结
2015/05/12 职场文书
2016幼儿园新学期寄语
2015/12/03 职场文书
Python预测分词的实现
2021/06/18 Python
Java 常见的限流算法详细分析并实现
2022/04/07 Java/Android