用弹出确认框来确认删除内容

王朝other·作者佚名  2006-11-24
宽屏版  字体: |||超大  

我们都知道UD的删除记录方法,它需要用一个新的页面来确认,如果把删除的页面直接做成command的形式(参考我的多项删除教程),又比较草率(往往容易删错记录),下面,小田是用一个弹出式的确认框来实现确认删除,效果如图

接下来让我们开始吧!

1、首先当然要有一个你想要删除的内容啦(怎么连数据库,怎么循环请去参考其他基础教程,这里就不多讲了),并且做好循环,如图

2、要实现确认框,当然要用到JavaScript啦,下面是这段代码:

代码:

--------------------------------------------------------------------------------

<script language="JavaScript">

function Confirmer()

{

if (confirm("请确定要删除此分类(确认删除的内容),以及与此分类相关的内容!")){

window.location.href=‘删除页地址';

}

}

</script>

[/code]

我们把这段代码加到循环记录的表格行中(一定要在行里,为什么?等会就知道了),效果如图

3、修改代码。接下来我们要把代码的内容换成我们记录的动态内容,看:

“确认删除的内容”替换成“<%=(rsLinkType.Fields.Item("LT_Name").Value)%>”(这是你自己的要确认的内容)

“删除页地址”替换成用了Go TO Detail Page “删除”的超链接,我这里是“LT_del.asp?<%= MM_keepNone & MM_joinChar(MM_keepNone) & "ID_LinkType=" & rsLinkType.Fields.Item("ID_LinkType").Value %>”

那么,现在的代码内容就变成下面这样的了:

以下内容为程序代码:

<script language="JavaScript">

function Confirmer()

{

if (confirm("请确定要删除此分类(<%=(rsLinkType.Fields.Item("LT_Name").Value)%>),以及与此分类相关的内容!")){

window.location.href='LT_del.asp?<%= MM_keepNone & MM_joinChar(MM_keepNone) & "ID_LinkType=" & rsLinkType.Fields.Item("ID_LinkType").Value %>';

}

}

</script>

然后要在原先“删除”的链接里加上“onClick='Confirmer()'”,如下:

以下内容为程序代码:<A HREF="#" onClick="Confirmer()">删除</A>

4、接下来是最关键的一步。我们现在可以试着浏览一下页面,呃!!怎么确认的内容和点击要删除的内容都不符合?呵,小田可不敢骗大家,不然一定鼻青脸肿^_^!其实原因很简单,因为我们在点击链接的时候,就调用了这个Confirmer()函数,但是在重复记录显示的时候,我们调用的函数就都一样了,程序就不知道调哪一个啦!所以确认的内容就不符合了。知道了原因就好办了!不知道大家有没有注意UD产生的记录循环代码

以下内容为程序代码:

<%

While ((Repeat1__numRows <> 0) AND (NOT rsLinkType.EOF))

%>

循环内容......

......

......

<%

Repeat1__index=Repeat1__index+1

Repeat1__numRows=Repeat1__numRows-1

rsLinkType.MoveNext()

Wend

%>

我们看这里的变量“Repeat1__index”,这是做循环条数的标识,我们就是要用它把每次调用的函数区别开来。在函数名的后面加上它吧,看:

以下内容为程序代码:

<script language="JavaScript">

function Confirmer<%=Repeat1__index%>()

{

if (confirm("请确定要删除此分类(<%=(rsLinkType.Fields.Item("LT_Name").Value)%>),以及与此分类相关的内容!")){

window.location.href='LT_del.asp?<%= MM_keepNone & MM_joinChar(MM_keepNone) & "ID_LinkType=" & rsLinkType.Fields.Item("ID_LinkType").Value %>';

}

}

</script>

当然,调用的地方也要改:

以下内容为程序代码:<A HREF="#" onClick="Confirmer()">删除</A>改成

<A HREF="#" onClick="Confirmer<%=Repeat1__index%>()">删除</A>

现在在试试,看看是不是已经一一对应了?

5、最后一步。传递参数(这里是ID_LinkType)到删除激烈页TL_del.asp,怎么用command做删除请参考我的“多项删除教程”(可以搜以前的帖,也可以在资源里找)

教程就写到这里了,有什么问题就回帖吧!其实我们学UD和ASP的同时,应该多尝试结合些JavaScript和Html,因为ASP就是一种和Html结合最密切的语言,我们要好好利用!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有