asp网页中变量作用域的问题提问

<%dimii=0%><scriptlanguage=vbscript>Ifmsgbox("",4+32,"")=6theni=1endif</script><%=i%>... <%
dim i
i=0
%> <script language=vbscript>
If msgbox("",4+32,"")=6 then
i=1
end if
</script>
<%=i%>

要求在弹出的对话框中,点"是"则网页输出1,即<%=i%>中i=1;而点否则网页输出0,即<%=i%>中i=0。
请问上面的源文件应该如何修改才行?
我的目的是;弹出对话框后,让用户选择。点是则执行是的代码;点否则执行否的代码。如:
<%
dim i
i=0
%> <script language=vbscript>
If msgbox("该文件已经存在,点是则覆盖;点否则重新命名!",4+32,"")=6 then
i=1
end if
</script>
<%
if i=1 then
'覆盖文件
else
'重新命名
end if
%>
这段代码应该怎样修改才能实现我的目的?
展开
 我来答
jyh_jack
2008-02-18 · TA获得超过4195个赞
知道大有可为答主
回答量:2080
采纳率:100%
帮助的人:2830万
展开全部
你的ASP基础没学好。

服务器总是先解析ASP,再解析脚本语言,最后才是HTML显示给客户端。

解析ASP后的HTML代码为:
<script language=vbscript>
If msgbox("",4+32,"")=6 then
i=1
end if
</script>
0 (因为你的ASP中i的值为0,所以输出0)

然后再运行VB脚本。
无论你点是或否都是改变的VB脚本中的变量i。
因为服务器总是先ASP,再脚本,如果你要输入vb脚本中的变量,就只能用脚本输出,不能用ASP,代码如下:

<script language=vbscript>
If msgbox("",4+32,"")=6 then
i=1
end if

document.write i
</script>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式