注册 登录
编程论坛 ASP技术论坛

新手

dope2008 发布于 2008-08-20 15:59, 728 次点击
<script language="javascript">
if (confirm("确定删除吗?")
{
<%
这里是ASP语句1
%>
}
else
{
<%
这里是ASP语句2
%>
}
</script>

我的意思是有一个对话框,你点确定,语句1,你点取消就是语句2


不过我这样写出错了
高手指点一二
8 回复
#2
tianyu1232008-08-20 20:18
你这样写是可以的,但你要注意程序的执行顺序。

服务端的脚本执行总是先于客户端的脚本!

你的意思是想通过javascript脚本控制asp脚本的执行,这样是不能实现的!

因为在javascrip脚本没有执行完毕时,而asp脚本已经执行完毕了!
#3
yms1232008-08-20 20:56
楼主还没有真正的明白ASP代码的执行顺序
<%%>内的代码在服务器端先执行,因此无论放在哪里都是优先执行,这里的代码的执行顺序最高
而只有<%%>内执行完毕后才会执行javascript的脚本代码,所以楼主的代码不会实现想要的功能。
#4
dope20082008-08-21 09:55
那我想要这样的功能,,怎么样写才对,
#5
longjw2008-08-21 10:05
我建议你都用ASP编写
#6
yms1232008-08-21 10:10
<script language="javascript">
if (confirm("确定删除吗?"))
{
   //省略DeleteText赋值代码
   document.form1.submit();   
}
</script>
<form name="fom1" action="abc.asp" method="pos" >
<input type="hidden" name="DeletText" >
</form>

abc.asp
<%
   IF Request.Form("DeleteText")<>"" Then
      '这里写删除的代码
   End IF
%>
以上代码只是给楼主提供一个思路,具体代码楼主根据具体程序自行补完。

[[it] 本帖最后由 yms123 于 2008-8-21 10:11 编辑 [/it]]
#7
dope20082008-08-21 15:20
<%
response.Write "<script language='javascript'>if(confirm('成功')){"

你点确定要执行的ASP语句1

response.Write "}else{"

你点取消要执行的ASP语句2

response.Write "}</script>"
%>

我是这样写了,我运行起来没有错,
#8
yms1232008-08-21 15:43
<%
response.Write "<script language='javascript'>if(confirm('成功')){"

你点确定要执行的ASP语句1

response.Write "}else{"

你点取消要执行的ASP语句2

response.Write "}</script>"
%>
这样写confirm还是没有用的,这里会同时执行ASP语句1和ASP语句2
#9
爬爬虫2008-08-21 16:01
版主说的有道理,哪有混写客户端和服务端代码的。
1