超酷的通用分页显示控制 (五) 添加、删除、修改记录、类别设置(下)
发表于:2007-06-30来源:作者:点击数:
标签:
三 和记录显示有关的客户端代码: 在 listrecordscon.inc 中增加了更多的控制 script language= java script var pagenum = %=theCurrentPageNum% ; // 单击“选择本页所有记录”复选框时触发 function CheckAll(form) { for (var i=0;iform.elements.length;
<三> 和记录显示有关的客户端代码:
在 listrecordscon.inc 中增加了更多的控制
<script language="
javascript">
var pagenum = <%=theCurrentPageNum%> ;
// 单击“选择本页所有记录”复选框时触发
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.name != ‘’chkall‘’ && e.name !=‘’chkallpage‘’)
e.checked = form.chkall.checked;
}
}
// 单击“选择本类所有记录”复选框时触发
function CheckAllPage(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.name != ‘’chkallpage‘’)
e.checked = form.chkallpage.checked;
}
}
// 检查是否选择了记录
function checkbox(form)
{
var theLength;
var i,j;
theLength = form.chk.length;
i = 0;
j = 0;
while(i<theLength){
if (form.chk[i].checked)
j ++ ;
i ++ ;
}
if (j==0 && !form.chk.checked){
alert("请先选择记录");
return false ;
}
return true ;
}
// 单击“删除”按钮时触发
function del(form)
{
var classid;
if (!checkbox(form)){
return false;
}
else
if (confirm(‘’您确信要删除这些记录吗?‘’)){
<% if theQueryClass <> "" then %>
// classid 在 query.inc 中的 for_query 表单中
classid = "?classid="+document.form_query.classid.value;
<% else %>
classid = "";
<% end if %>
// theActionScript 隐含域,在调用 listrecords() 函数时生成
form.action = form.theActionScript.value + "_delete.asp"+classid;
form.submit() ;
}
}
var openwin_add ;
var init = "<%=theInit%>";
// 单击“添加”按钮时触发
function add(pn)
{
<% if theQueryClass <> "" then %>
// classid 在 query.inc 中的 for_query 表单中
// 自动选择当前类别
classid = "&classid="+document.form_query.classid.value;
<% else %>
classid = "";
<% end if %>
window.open(‘’<%=theActionScript%>_edit.asp?pn=‘’+pagenum+classid+‘’<%=theTableClassStr%>‘’+init, ‘’‘’, ‘’width=<%=theWinW%>,height=<%=theWinH%>,resizable=0,scrollbars=yes‘’);
}
var openwin_edit;
function edit(id,pn)
{
window.open(‘’<%=theActionScript%>_edit.asp?id=‘’+id+"&pn="+pagenum+‘’<%=theTableClassStr%>‘’, ‘’‘’, ‘’width=<%=theWinW%>,height=<%=theWinH%>,resizable=0,scrollbars=yes‘’);
}
var openwin_view;
function view(id,pn)
{
window.open(‘’<%=theActionScript%>_view.asp?id=‘’+id+"&pn="+pagenum+‘’<%=theTableClassStr%>‘’, ‘’‘’, ‘’width=<%=theWinW%>,height=<%=theWinH+12%>,resizable=0,scrollbars=yes‘’);
}
// 如果有类别,则提供类别设置
<% if theQueryClass <> "" then %>
var openwin_cls;
function set_class(pn)
{
window.open(‘’../asp/setclass.asp?parentwinpn=‘’+pagenum+‘’&tableclass=<%=theQueryClass%>‘’, ‘’‘’, ‘’width=<%=theWinW_cls%>,height=<%=theWinH_cls%>,resizable=0,scrollbars=no‘’);
}
<% end if %>
</script>
<%
‘’ 显示全选项和“删除”按钮
if theRsCount > 0 then
if theQueryClass <> "" then uClass = "本类" else uClass = ""
%>
<input type="checkbox" id="id_chkall" name="chkall" value="1" onclick="javascript:CheckAll(this.form);"><label for="id_chkall">选择本页所有记录</label>
<%
‘’ 如果不想显示“类别设置”按钮,则可以通过设置 theListClass = 0 来屏蔽
if theListClass = 0 then
else %>
<input type="checkbox" id="id_chkallpage" name="chkallpage" value="1" onclick="javascript:CheckAllPage(this.form);"><label for="id_chkallpage">选择<%=uClass%>所有记录</label>
<% end if %>
<input type="button" name="de
lrec" value="删除记录" onclick="javascript:del(this.form);" class="form_button">
<%
end if
‘’ 显示“添加”按钮,使用 select 方式是为了以后的扩充
if theConType <> "" then
theConType = split(theConType,",")
for each element in theConType
element = cint(element)
select case element
case 1 ‘’ 删除:程序默认
case 2 ‘’ 添加
%>
<input type="button" name="addrec" value="添加记录" onclick="javascript:add(<%=theCurrentPageNum%>);return false;" class="form_button">
<%
end select
next
end if
‘’ 显示“类别设置”按钮
if theQueryClass <> "" then
‘’ 如果不想显示“类别设置”按钮,则可以通过设置 theListClass = 0 来屏蔽
if theListClass = 0 then
else
%>
<input type="button" name="setclass" value="类别设置" onclick="javascript:set_class(<%=theCurrentPageNum%>);return false;" class="form_button">
<%
end if
end if
%>
在下一篇中,我将以 setclass.asp 为例,来讨论完整的分页控制的应用。
原文转自:http://www.ltesting.net