西安网站建设ASP开发小技巧集锦

16422013-04-18

西安网站建设ASP开发小技巧集锦

1. 几个常用函数
Round(pi, 2) 四舍五入

FormatNumber(k,4) ‘ 把 k 格式化为带四位小数点的数,西安网站建设团队点墨网络竭诚为您服务。
eg. 如果k =20000则显示为20,000.00;如果把formatnumber(k,0)则为20,000

Replace(expression,find,replacewith) ‘返回一字符串,其中指定的子串已被另一个子串替换

Left(String,Length) ‘返回指定数目的从字符串的左边算起的字符串。

Split(expression[, delimiter[, count[, start]]]) ‘返回基于 0 的一维数组,其中包含指定数目的子字符串。
eg. 常用这个 Split(String,[delimiter]) ‘ 用delimiter(用于标识子字符串界限的字符)来划分字符串

Instr(String1,String2) ‘返回某字符串在另一字符串中第一次出现的位置
eg1. if instr(addation,“密码配置表“)<>0 then ‘说明存在
eg2. if instr(str,”AP”) >0 不好区分str = (AP,AP&AC),此时只要变为(’AP’,’AP&AC’),再用instr(str,”’AP’”)
2. 弹出窗口Pick值

function pickupSP(spdisid,pjnum,pdcode)
{
window.opener.<%=theForm%>.RefNum<%=Spid%>.value=spdisid;
window.opener.<%=theForm%>.LineS<%=Spid%>.value=pjnum;
window.opener.<%=theForm%>.kokey<%=Spid%>.value=pdcode;
window.close();
}
3. ASP控制图片显示的大小(等比例缩放)
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script language=“JavaScript“>
<!--
var flag=false;
function DrawImage(ImgD){
var image=new Image();
image.src=../../ImgD.src;
if(image.width>0 && image.height>0){
flag=true;
if(image.width/image.height>= 164/112){
if(image.width>164){
ImgD.width=164;
ImgD.height=(image.height*164)/image.width;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+“x“+image.height;
}
else{
if(image.height>112){
ImgD.height=112;
ImgD.width=(image.width*112)/image.height;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+“x“+image.height;
}
}
}
//-->
</script>
</HEAD>
<BODY>
<a href=../../“./img.jpg“ target=“_blank“><img src=../../“./img.jpg“ border=“0“ width=“164“ height=“112“ onload=“javascript:DrawImage(this);“></a>
</BODY>
</HTML>
4. ASP中对数据库表的操作(INSERT/UPDATE/DELETE),可使用事务处理,并支持多事务处理.
在ASP的数据库对象链接对象中,提供了一下属性:
BeginTrans 事务开始
CommitTrans 事务提交
RollbackTrans 事务回滚
<%
On Error Resume Next ’错误发生后继续处理
‘Asp中使用事务
Set conn=Server.CreateObject(“ADODB.Connection“)
conn.Open “course_dsn“,“course_user“,“course_password“
conn.begintrans ‘开始事务
sql=“delete from user_info“
set rs=server.createobject(“adodb.recordset“)
rs.open sql,conn,3,3
if conn.errors.count>0 then ‘有错误发生
conn.rollbacktrans ‘回滚
set rs=nothing
conn.close
set conn=nothing
response.write “交易失败,回滚至修改前的状态!“
response.end
else
conn.committrans ‘提交事务
set rs=nothing
conn.close
set conn=nothing
response.write “交易成功!“
response.end
end if
%>
在ASP中,不提供事务的结束,BeginTrans只作用于自己的域,类似于变量声明一样,如果在函数体内BeginTrans,则事物只作用于本函数体,如果BeginTrans在函数体外,处于页面级,则事务的作用域从BeginTrans开始,到页面的结束均处于事务的管理状态下.
5. EasySales数据库操作

dim objCon,objRst,objsql
dim companyid
Set objCon = Server.CreateObject(“ADODB.Connection“)
objCon.Open SYSDNS,SYSNAME,SYSPASSWORD
Set objRst = Server.CreateObject(“ADODB.RecordSet“)
objsql=“select * from PasswordConfig where companyid=‘“&session(“CompanyID“)&“‘“
objRst.Open objsql,objCon,1,3
6. html格式邮件发送
HTML = “<html>“
HTML = HTML & “<head>“
HTML = HTML & “<title>Sending CDONTS Email Using HTML</title>“
HTML = HTML & “<link href=../../“../cn/new.css“ rel=“stylesheet“ type=“text/css“>“
HTML = HTML & “</head>“
HTML = HTML & “<body bgcolor=““FFFFFF““>“
HTML = HTML & “<p><font size=7>“
HTML = HTML & “This is a test mail in html<br>“
HTML = HTML & “Mail content here ...</font></p>“
HTML = HTML & “</body>“
HTML = HTML & “</html>“
dim StrRecEmail,StrPosEmail,StrSubject,StrBody
StrRecEmail=request(“email“)
StrPosEmail=“yufh@alleasy.com.cn“
StrSubject=“资料下载通知函“
StrBody=HTML
7. input是下划线
style=“BORDER-RIGHT: #f7f7f7 0px solid; BORDER-TOP: #f7f7f7 0px solid; FONT-SIZE: 9pt; BORDER-LEFT: #f7f7f7 0px solid; WIDTH: 110px; BORDER-BOTTOM: #c0c0c0 1px solid; HEIGHT: 16px; BACKGROUND-COLOR: #f7f7f7“
8. Session & Cookie
写入一个SESSION:
Session[“username“])=“aa“;
Session(“username“)=“aa“
读取一个SESSINN:
string username= Session[“username“];
dim username=Session(“username“)
Cookie与此用法大致相同
9. 几个VB中的常数
下列常数由 Visual Basic for Applications 中的类型库定义,可用来在代码中的任何地方代替实际值:
常数 等于 描述
vbCrLf Chr(13) + Chr(10) 回车符与换行符结合
vbCr Chr(13) 回车符
vbLf Chr(10) 换行符
vbNewLine Chr(13) + Chr(10) 平台指定的新行字符;适用于当前平台
vbNullChar Chr(0) 值为 0 的字符
vbNullString 值为 0 的字符串 用来调用外部过程;与长度为零的字符串 (““) 不同
vbObjectError -2147221504 用户定义的错误号应当大于该值,例如:
Err.Raise Number = vbObjectError + 1000
vbTab Chr(9) Tab 字。
vbBack Chr(8) 退格字符

10. 按钮为不可用
<%if rsView.eof and rsView.bof then %> ‘ 这里有个大问题,下文再说
<input name=“submit“ type=‘submit‘ value=‘对选定用户解鎖‘ disabled>
<%else%>
<input name=“submit“ type=‘submit‘ value=‘对选定用户解鎖‘ >
</td>
<%end if%>


11. 报错并返回
if rs.bof and rs.eof then ‘还是有问题
response.write“<SCRIPT language=JavaScript>alert(‘找不到!‘);“
response.write“javascript:history.go(-1)</SCRIPT>“
end if
-----------------------------------
这个是跳转。
<script language=“javascript“>
alert(‘<%=intOperationInfo%>‘);
window.navigate(‘ChangePwd.asp‘);
</Script>
12. 从VBS到JS,混用
<%
dim checkpwdconfig
checkpwdconfig=split(addation,“/“)
%>
<script language=“javascript“>
alert(“<%=checkpwdconfig(0)%>“)
</script>
13. 弹出窗口
<script language=javascript>
function openaddnew()
{
subWindow=window.open(“../Edit/PasswordConfigEdit.asp?method=new“,‘‘,‘scrollbars=yes,left=120,top=60,height=250,width=500,menubar=no,location=no,toolbar=no,resizable=yes‘,‘‘)
subWindow.opener = this;
}
</script>
用一个连接调用:
<a href=../../““#““>请修改密码 onClick=“openaddnew()“</a>
图片调用:
<img name=submit1 src=../../“../button_new<%=session(“languageid“)%>.gif“ onClick=“openaddnew()“>
14. 分页
<!--#include file=“conn.asp“-->
<%
if request(“pageno“)<>““ then
pageno=int(request(“pageno“))
else
pageno=1
end if
sql=“select * from news where [language]=‘中文‘ and bigclassname=‘新闻‘ order by id desc“
Set rs= Server.CreateObject(“ADODB.Recordset“)
rs.open sql,conn,1,3
rs.pagesize=20
if rs.eof then
pageno=0
else
rs.absolutepage=pageno
end if
%>
==========================================
共<%=rs.recordcount%>条,<%=pageno%>/<%=int(rs.pagecount)%>页,每页<%=rs.pagesize%>条
<a href=../../“manage.asp?pageno=1“>首页</a>
<%if pageno>1 then%>
<a href=../../“manage.asp?pageno=<%=int(pageno)-1%>“>上一页</a>
<%
end if
if int(pageno)<>int(rs.pagecount)then
%>
<a href=../../“manage.asp?pageno=<%=int(pageno+1)%>“>下一页</a>
<%end if%>
<a href=../../“manage.asp?pageno=<%=int(rs.pagecount)%>“>尾页</a>
<%rs.close%>
<%
call CloseConn()
%>
15. 数据库更新
sql=“select * from [user] where username=‘“&request(“username“)&“‘“
rs.Open sql,Conn,1,3
rs(“usermail“)=Request(“usermail“)
rs(“userhome“)=Request(“userhome“))
rs.update
rs.close
16. 关闭独立窗口
<head>
<OBJECT id=closes type=“application/x-oleobject“ classid=“clsid:adb880a6-d8ff- 11cf-9377-00aa003b7a11“><param name=“Command“ value=“Close“>
</object>
</head>
<body>
<input type=“button“ value=“点击我关闭窗口“ onclick=“closes.Click();“>
</body>
17. 极细表格
<table border=“1“ cellpadding=“0“ cellspacing=“0“ width=“32“ height=“32“ bordercolorlight=“#000000“ bordercolordark=“#FFFFFF“>
<tr>
<td></td>
</tr>
</table>
18. 几个正则表达式
Require : /.+/,
Email : /^\w+([-+.]\w+)*@\w+([-.]\\w+)*\.\w+([-.]\w+)*$/,
Phone : /^((\(\d\))|(\d\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/,
Mobile : /^((\(\d\))|(\d\-))?13\d$/,
Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\‘:+!]*([^<>\“\“])*$/,
IdCard : /^\d{15}(\d[A-Za-z0-9])?$/,
Currency : /^\d+(\.\d+)?$/,
Number : /^\d+$/,
Zip : /^[1-9]\d$/,
QQ : /^[1-9]\d{4,8}$/,
Integer : /^[-\+]?\d+$/,
Double : /^[-\+]?\d+(\.\d+)?$/,
English : /^[A-Za-z]+$/,
Chinese : /^[\u0391-\uFFE5]+$/,
UnSafe :/^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\‘\“]*)|.{0,5})$|\s/,
19. Left应用(控制字数)
function title(str)
if len(trim(str))>=28 then
title=left(trim(str),27)&“...“
else
title=trim(str)
end if
end function
20. 判断浏览器
<SCRIPT LANGUAGE=“javascript1.2“>
<!--//
if (navigator.appName == ‘Netscape‘)
var language = navigator.language;
else
var language = navigator.browserLanguage;
if (language.indexOf(‘en‘) > -1) document.location.href = ‘en/index.asp‘;
else if (language.indexOf(‘zh‘) > -1) document.location.href = ‘cn/index.asp‘;
else
document.location.href = ‘cn/index.asp‘;
// End -->
</script>

21. 嵌入另一页



<iframe class=“TBGen“ style=“top:2px“ ID=“UploadFiles“ src=../../“upload.asp“ frameborder=0 scrolling=no width=“250“ height=“25“></iframe>

-------------------------------------
其实也可以用<!--#include file=“fuck.asp“-->



22. 全部选定



<SCRIPT language=javascript>
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.Name != “chkAll“)
e.checked = form.chkAll.checked;
}
}
</script>
引用:
<td width=“250“ height=“30“><input name=“chkAll“ type=“checkbox“ id=“chkAll“ onclick=CheckAll(this.form) value=“checkbox“>选中本页显示的所有</td>



小格:
<input name=‘username‘ type=‘checkbox‘ id=“username“ value=“<%=cstr(rsView(“username“))%>“>



23. 如何处理页面执行时发生的错误?



<%@ LANGUAGE=“VBScript“ %>
<%
Response.Buffer = True ‘ 打开页面缓冲
On Error Resume Next ‘ 打开错误处理
…………‘ ASP代码
%>



<%
If Err.Number <> 0 Then ‘ 错误处理
Response.Clear ‘ 清除缓冲区
%>



<HTML>‘ 显示错误信息页面
<HEAD>
<TITLE>页面错误报告</TITLE>
</HEAD>



<BODY BGCOLOR=“#C0C0C0“>
<font color=red>
<p>页面错误报告</p>



错误号:<%= Err.Number %><BR>
错误描述:<%= Err.Description %><BR>
错误源:Source <%= Err.Source %><BR>
错误发生行:<%= Err.Line %><BR>
</BODY>
</HTML>
<%
End If
%>



24. 收藏夹图标.



在 HEAD 部分加入下面的内容:
<LINK REL=“SHORTCUT ICON“ HREF=http://www.alleasy.com.cn/alleasy.ico>



在地址栏加入图标(图标必须是.ico格式,并且要加入收藏后才有效)
在HEAD里加入 <link rel=“shortcut icon“ href=../../“favicon.ico“>



25. 校验提交表单(正则表达式应用)



<script language=“JavaScript“>
<!--
function CheckForm()
{
if (LoginID.value ==““)
{
alert(“请填写您的登录名!“);
LoginID.focus();
return false;
}
var filter=/^\s*[.A-Za-z0-9_-]{5,15}\s*$/;
if (!filter.test(LoginID.value)) {
alert(“用户名填写不正确,请重新填写!可使用的字符为(A-Z a-z 0-9 _ - .)长度不小于5个字符,不超过15个字符,注意不要使用空格。“);
LoginID.focus();
LoginID.select();
return false;
}
if (Password.value ==““)
{
alert(“请填写您的密码!“);
Password.focus();
return false;
}
var filter=/^\s*[.A-Za-z0-9_-]{5,15}\s*$/;
if (!filter.test(Password.value)) {
alert(“密码填写不正确,请重新填写!可使用的字符为(A-Z a-z 0-9 _ - .)长度不小于5个字符,不超



过15个字符,注意不要使用空格。“);
Password.focus();
Password.select();
return false;
}
if (Password.value != ConfirmPassword.value)
{
alert(“请两次填写的密码不一致,请重新填写!“);
ConfirmPassword.focus();
return false;
}
if (CompanyName.value ==““)
{
alert(“请填写贵公司名称!“);
CompanyName.focus();
return false;
}
var filter=/^[a-zA-Z][a-zA-Z0-9._-]*@([a-zA-Z0-9-_]+\.)+(com|gov|net|com\.cn|edu\.cn)$/;
if(!filter.test(document.myform.Email.value)){
alert(“邮箱格式不正确!“);
document.myform.Email.focus();
return false;
}
myform.submit();
return true;
}
//-->
</SCRIPT>



统一一下,以后都这样写
<form method=“POST“ name=“myform“ action=“Checkreg.asp“ >
</form>



<input type=“button“ name=“Submit“ value=“提交“ onClick=“CheckForm();“>



26. 循环



<%
dim sql,rs
set rs=server.createobject(“ADODB.recordset“)
sql=“select * from news where bigclassname=‘解决方案‘“
rs.open sql,conn,1,3
for k=1 to rs.recordcount
if rs.eof then
exit for
else
%>



<tr>
<td>
asfasdf
</td>
</tr>



<%
rs.movenext
end if
next
%>



27. 另一个只能输入数字代码



<script language=java script>
function check(){
if(isNaN(tt.value))
{
alert(“必须是数字!“);
tt.value=““;
}
</script>



<input type=“text“ name=“tt“ onkeyup=“check();“>



28. 有选择显示



function showco(va)
{
if (va==“CO“)
{
RefNum.style.display=‘‘; //不再用这个可以直接用 block
buttonsp.style.display=‘none‘;
}
if (va==“SP“)
{
buttonco.style.display=‘none‘;
buttonsp.style.display=‘‘;
kokey.style.display=‘‘;
}
if (va==“Inventory“)
{
RefNum.style.display=‘none‘; //不显示
Reftr.style.display=“block“; //显示
}



调用:



<select name=“RefType“ style=‘width:77pt‘ onChange=“showco(this.value)“>



<option value=“Inventory“>Inventory</option>



<option value=“CO“ >CO</option>



<option value=“SP“>SP</option>



</select>



选择显示行 <tr id=“Reftr“ name=“Reftr“ style=“display:none“>也可以用<div id=”Resftr” ></div>



29. 调试参数显示规范



Response.Write session(“LoginCompanyId“)&“,“&Date&“,“&Request.Form(“Owner“)&“,“&Request.Form(“Name“)&

通过本文您对西安网站建设有了进一步了解,本公司温馨提醒:找西安做网站公司,请选择手续齐全、业务精、服务好的正规公司。

工商网上亮照

版权所有:西安点墨网络科技有限公司 信息备案编号: 陕ICP备11004160号-1

客户服务电话:15229292610

公司注册地址:西安市雁塔区融鑫路丽湾蓝岛1幢3单元16层31605号

临时办公地址:西安市雁塔区朱雀大街紫郡长安F3

Sitemap 网站地图 手机版

服务热线:15229292610

客服信箱:vip@dianmo.cc

846461336327

版权所有:西安点墨网络科技有限公司 信息备案编号: 陕ICP备11004160号-1