ASP执行到某一行代码的时候弹出一个对话框,点“是”则继续往下执行,点“否”则不往下执行,如何做?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP执行到某一行代码的时候弹出一个对话框,点“是”则继续往下执行,点“否”则不往下执行,如何做?相关的知识,希望对你有一定的参考价值。

例如:访客在注册是填写姓名,录入数据库的钱先查询数据库是否有所输入的姓名,若已经有了,弹出提示“已经存在此姓名,但不排除同名人,是否继续录入?是,否”,弱访客点击是,则继续写入数据库,否则后退一页,高手帮忙呀!

asp服务器中没有你想要的【点“是”则继续往下执行,点“否”则不往下执行】,因为服务器端不允许有对话弹出;
但是可以用vbscript客户端脚本语言实现。
<script language="vbscript">
dim a
a = MsgBox ("Hello World!",4,"boxtitle")
</script>
以下是详细内容:
MsgBox 函数
在对话框中显示消息,等待用户单击按钮,并返回一个值指示用户单击的按钮。

MsgBox(prompt[, buttons][, title][, helpfile, context])

参数
prompt

作为消息显示在对话框中的字符串表达式。prompt 的最大长度大约是 1024 个字符,这取决于所使用的字符的宽度。如果 prompt 中包含多个行,则可在各行之间用回车符 (Chr(13))、换行符 (Chr(10)) 或回车换行符的组合 (Chr(13) & Chr(10)) 分隔各行。

Buttons

数值表达式,是表示指定显示按钮的数目和类型、使用的图标样式,默认按钮的标识以及消息框样式的数值的总和。有关数值,请参阅“设置”部分。如果省略,则 buttons 的默认值为 0。

Title

显示在对话框标题栏中的字符串表达式。如果省略 title,则将应用程序的名称显示在标题栏中。

Helpfile

字符串表达式,用于标识为对话框提供上下文相关帮助的帮助文件。如果已提供 helpfile,则必须提供 context。在 16 位系统平台上不可用。

Context

数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。如果已提供 context,则必须提供 helpfile。在 16 位系统平台上不可用。

设置
buttons 参数可以有以下值:

常数 值 描述
vbOKOnly 0 只显示确定按钮。
vbOKCancel 1 显示确定和取消按钮。
vbAbortRetryIgnore 2 显示放弃、重试和忽略按钮。
vbYesNoCancel 3 显示是、否和取消按钮。
vbYesNo 4 显示是和否按钮。
vbRetryCancel 5 显示重试和取消按钮。
vbCritical 16 显示临界信息图标。
vbQuestion 32 显示警告查询图标。
vbExclamation 48 显示警告消息图标。
vbInformation 64 显示信息消息图标。
vbDefaultButton1 0 第一个按钮为默认按钮。
vbDefaultButton2 256 第二个按钮为默认按钮。
vbDefaultButton3 512 第三个按钮为默认按钮。
vbDefaultButton4 768 第四个按钮为默认按钮。
vbApplicationModal 0 应用程序模式:用户必须响应消息框才能继续在当前应用程序中工作。
vbSystemModal 4096 系统模式:在用户响应消息框前,所有应用程序都被挂起。

第一组值 (0 - 5) 用于描述对话框中显示的按钮类型与数目;第二组值 (16, 32, 48, 64) 用于描述图标的样式;第三组值 (0, 256, 512) 用于确定默认按钮;而第四组值 (0, 4096) 则决定消息框的样式。在将这些数字相加以生成 buttons 参数值时,只能从每组值中取用一个数字。

返回值
MsgBox 函数有以下返回值:

常数 值 按钮
vbOK 1 确定
vbCancel 2 取消
vbAbort 3 放弃
vbRetry 4 重试
vbIgnore 5 忽略
vbYes 6 是
vbNo 7 否
参考技术A 提交后的页面
if 用户名存在 then
response.write("<script>alert('对不起,该用户名已经存在,请重新输入');history.go(-1);</script>")
else
继续写入数据
end if追问

你这个代码弹出的对话框只能点击“确定”,然后回退吧?没能继续往下执行的。我的意思是点击“确定”往下执行,点击“取消”则不往下执行。

参考技术B 楼主,你要知道这个代码
if 用户名存在 then
response.write("<script>alert('对不起,该用户名已经存在,请重新输入');history.go(-1);</script>")
else
继续写入数据
end if
在弹出该用户已存在就执行history.go(-1)了,页面会后退的追问

不是我要的答案,我不让它退后,我让注册者点“是”则写如数据库,点否则重新输入,你给的代码只能重新输入,不能选择直接写入数据库。

网页上 点登陆弹出一个登录对话框使用啥技术实现的 AJAX吗?怎么做啊?急

使用JavaScript即可,仅仅是弹出对话框的话没有涉及到Ajax。
具体做法,可以使用JavaScript给登陆按钮注册一个点击事件处理函数,当点击这个按钮的时候,就触发该函数,在这个函数中生成一个弹出层,该弹出层就是登陆对话框了。
如果想写好这个功能的话,需要具备良好的HTML知识(写页面结构,内容),良好的CSS知识(写页面的表达效果),良好的JavaScript知识(写页面的行为)。
另外:写页面行为也可以使用JavaScript库,如jQuery等~
弹出一个登陆对话框,在登陆的使用一般使用Ajax技术,因为输入用户名,密码的时候,点击确定,如果出现错误,用户是不希望页面全部被刷新,而是希望系统给出错误原因。并给出视觉上的提示。这时运用ajax技术,需要在点击确定按钮的时候,创建请求对象,并校验输入是否出错,从而实现局部页面刷新~
参考技术A 先写个弹出来的diV CSS设置为隐藏 当点击是 把隐藏改为显示

function showDiv()
document.getElementById('hye').style.display='block';
document.getElementById('hye_bg').style.display='block';

function closeDiv()
document.getElementById('hye').style.display='none';
document.getElementById('hye_bg').style.display='none';

以上是关于ASP执行到某一行代码的时候弹出一个对话框,点“是”则继续往下执行,点“否”则不往下执行,如何做?的主要内容,如果未能解决你的问题,请参考以下文章

confirm弹出对话框,点确定执行一段代码,取消执行另一段,怎么实现?

asp如何弹出提示框~

myeclipse里怎么打断点调试

ASP如何弹出一个对话框

asp.net后台弹出一个确认对话框,点击确定时执行我写的方法,点击取消不执行,该怎么实现?

ASP.NET实现导出word,在IE6中可以下载保存但在IE8中却不能??