嘉定都市网

查看:2726 回复:3 发表于 2002-2-23 14:37

该用户从未签到

qrcode
跳转到指定楼层
楼主
发表于 2002-2-22 17:31:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

如何做超链“确认”对话框 [复制链接]

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
点击有些超链接时,你会发现点击后弹出一个确认对话框,让你确认是否继续,如果选择“确定”则会继续加载链接页面,如选则“取消”则不会继续。源代码如下:

1.将下面一段代码插入<head>与</head>之间:

<script>
function rusure()
{  
question = confirm("确实要去进入吗?")  
if (question !="0")
{
window.open("","测试公告窗口","width=340,height=163,toolbar=0,status=0,menubar=0,resize=0");
}
}
</script>

2.在链接标签内加入onclick()语句:

<a href="" onClick="rusure(); return false;">来点击我</a>

实现的方法为两步,首先将源码粘贴框中的JavaScript代码插入到<head>与</head>之间,然后在链接的标签中加入onclick()语句即可。

  这个方法其实还可以用在其它的地方,比如说对于一个“提交”按钮,如果加上确认对话框,就能给提交者反悔的机会。JavaScript提供的标准对话框有好几种,我们把它列在下表中,供你使用时参考。

确认对话框:
re=confirm("确认信息")      
    选择“确认”或“取消”,   用返回值控制响应 真或假(True/False)

警告对话框:
alert("警告信息")            
    仅是一个警告,点击“确定”自动消失 无返回值

输入对话框:
re=prompt("问题","默认回答")   
    返回用户输入的信息,做下一步的操作 用户输入的文本串或空值

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享淘帖 支持支持 反对反对
回复

使用道具 打印 举报

该用户从未签到

沙发
发表于 2002-2-22 22:53:12 | 只看该作者
以上方法最致命的缺点在于如果用户想要按住shift键重新开一个窗口,那得到的结果会很混乱,首先会弹出一个窗口,因为href属性为空,所以里面什么都没有,而这个时候焦点转到新开的窗口,本来窗口的function也不会执行,看上去很不舒服,主要还是因为tag "a"在作怪,小生为这个问题头痛了很久,最后不得不放弃,总结为:任何想要用a来启动javascript的代码都会受到shift键的牵连,要不就是定义的css无法正确的到应用。现在小生一般采用的方法就是直接写href,毕竟花哨的js没什么太大的用处,真的要确认,还是返回一个确认页面,把用户的选择详细地告诉用户,然后再执行下一步。如果是图片的话,那不要在外面再套<a> </a>了,直接定义img的onclick就好,这样还可以省下border=0这一条。而且dw的findobj函数支持任何name,不管是a的还是img的,所以由它生成的swapimage等函数可以按照以上方法把a里面的东西全部搬到img里去,唯一改动就是把img的鼠标指针变成hand。经过以上改动,单窗口中的效果和原来一样,如果是用点击image作为启动js的标志,那这样的好处是即使按下了shift键,也不会弹出窗口,而只是在原窗口中执行而已。具体效果可以看http://www.miaojiang.com/bigxian/page/index.asp
回复 支持 反对

使用道具 打印 举报

该用户从未签到

板凳
发表于 2002-2-22 23:44:36 | 只看该作者
说的那么深 你干什么的
回复 支持 反对

使用道具 打印 举报

该用户从未签到

地板
发表于 2002-2-23 14:37:48 | 只看该作者
小生说得很简单啦

小生只是最近在搞那个页,稍微有些研究而已,不敢独享。
回复 支持 反对

使用道具 打印 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

发表新贴 返回顶部