1.oncontextmenu="window.event.returnvalue=false"將徹底屏蔽鼠標(biāo)右鍵
oncontextmenu=self.event.returnValue=false
oncontextmenu="return false"
<tableborderoncontextmenu=return(false)><td>no</table>可用于Table
2.<bodyonselectstart="returnfalse">取消選取、防止復(fù)制
3.onpaste="returnfalse"不準(zhǔn)粘貼
4.oncopy="returnfalse;"oncut="returnfalse;"防止復(fù)制
5.<linkrel="ShortcutIcon"href="favicon.ico">IE地址欄前換成自己的圖標(biāo)
6.<linkrel="Bookmark"href="favicon.ico">可以在收藏夾中顯示出你的圖標(biāo)
7.<inputstyle="ime-mode:disabled">關(guān)閉輸入法
8.永遠(yuǎn)都會(huì)帶著框架
<scriptlanguage="javascript"><!--
if(window==top)top.location.href="frames.htm";//frames.htm為框架網(wǎng)頁
//--></script>
9.防止被人frame
<SCRIPTLANGUAGE=javascript><!--
if(top.location!=self.location)top.location=self.location;
//--></SCRIPT>
10.<noscript><iframesrc=*.html></iframe></noscript>網(wǎng)頁將不能被另存為
11.<inputtype=buttonvalue=查看網(wǎng)頁源代碼
onclick="window.location='view-source:'+'<IMG src="pic/url.gif" align=absMiddle border=0>http://www.csdn.net/">
12.怎樣通過asp的手段來檢查來訪者是否用了代理
<%ifRequest.ServerVariables("HTTP_X_FORWARDED_FOR")<>""then
response.write"<fontcolor=#FF0000>您通過了代理服務(wù)器,"&_
"真實(shí)的IP為"&Request.ServerVariables("HTTP_X_FORWARDED_FOR")
endif
%>
13.取得控件的絕對(duì)位置
//javascript
<scriptlanguage="javascript">
functiongetIE(e){
vart=e.offsetTop;
varl=e.offsetLeft;
while(e=e.offsetParent){
t+=e.offsetTop;
l+=e.offsetLeft;
}
alert("top="+t+"\nleft="+l);
}
</script>
//VBScript
<scriptlanguage="VBScript"><!--
functiongetIE()
dimt,l,a,b
seta=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
whilea.tagName<>"BODY"
seta=a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox"top="&t&chr(13)&"left="&l,64,"得到控件的位置"
endfunction
--></script>
14.光標(biāo)是停在文本框文字的最后
<scriptlanguage="javascript">
functioncc()
{
vare=event.srcElement;
varr=e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse(true);
r.select();
}
</script>
<inputtype=textname=text1value="123"onfocus="cc()">
15.判斷上一頁的來源
asp:
request.servervariables("HTTP_REFERER")
javascript:
document.referrer
16.最小化、最大化、關(guān)閉窗口
<objectid=hh1classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<paramname="Command"value="Minimize"></object>
<objectid=hh2classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<paramname="Command"value="Maximize"></object>
<OBJECTid=hh3classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<PARAMNAME="Command"value="Close"></OBJECT>
<inputtype=buttonvalue=最小化onclick=hh1.Click()>
<inputtype=buttonvalue=最大化onclick=hh2.Click()>
<inputtype=buttonvalue=關(guān)閉onclick=hh3.Click()>
本例適用于IE
17.
<%
'定義數(shù)據(jù)庫連接的一些常量
ConstadOpenForwardOnly=0'游標(biāo)只向前瀏覽記錄,不支持分頁、Recordset、BookMark
ConstadOpenKeyset=1'鍵集游標(biāo),其他用戶對(duì)記錄說做的修改將反映到記錄集中,但其他用戶增加或刪除記錄不會(huì)反映到記錄集中。支持分頁、Recordset、BookMark
ConstadOpenDynamic=2'動(dòng)態(tài)游標(biāo)功能最強(qiáng),但耗資源也最多。用戶對(duì)記錄說做的修改,增加或刪除記錄都將反映到記錄集中。支持全功能瀏覽(ACCESS不支持)。
ConstadOpenStatic=3'靜態(tài)游標(biāo),只是數(shù)據(jù)的一個(gè)快照,用戶對(duì)記錄說做的修改,增加或刪除記錄都不會(huì)反映到記錄集中。支持向前或向后移動(dòng)
ConstadLockReadOnly=1'鎖定類型,默認(rèn)的,只讀,不能作任何修改
ConstadLockPessimistic=2'當(dāng)編輯時(shí)立即鎖定記錄,最安全的方式
ConstadLockOptimistic=3'只有在調(diào)用Update方法時(shí)才鎖定記錄集,而在此前的其他操作仍可對(duì)當(dāng)前記錄進(jìn)行更改、插入和刪除等
ConstadLockBatchOptimistic=4'當(dāng)編輯時(shí)記錄不會(huì)被鎖定,而更改、插入和刪除是在批處理方式下完成的
ConstadCmdText=&H0001
ConstadCmdTable=&H0002
%>
18.網(wǎng)頁不會(huì)被緩存
HTM網(wǎng)頁
<METAHTTP-EQUIV="pragma"CONTENT="no-cache">
<METAHTTP-EQUIV="Cache-Control"CONTENT="no-cache,must-revalidate">
<METAHTTP-EQUIV="expires"CONTENT="Wed,26Feb199708:21:57GMT">
或者<METAHTTP-EQUIV="expires"CONTENT="0">
ASP網(wǎng)頁
Response.Expires=-1
Response.ExpiresAbsolute=Now()-1
Response.cachecontrol="no-cache"
PHP網(wǎng)頁
header("Expires:Mon,26Jul199705:00:00GMT");
header("Cache-Control:no-cache,must-revalidate");
header("Pragma:no-cache");
19.檢查一段字符串是否全由數(shù)字組成
<scriptlanguage="javascript"><!--
functioncheckNum(str){returnstr.match(/\D/)==null}
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
//--></script>
20.獲得一個(gè)窗口的大小
document.body.clientWidth,document.body.clientHeight
21.怎么判斷是否是字符
if(/[^\x00-\xff]/g.test(s))alert("含有漢字");
elsealert("全是字符");
22.TEXTAREA自適應(yīng)文字行數(shù)的多少
<textarearows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight">
</textarea>
23.日期減去天數(shù)等于第二個(gè)日期
<scriptlanguage=javascript>
functioncc(dd,dadd)
{
//可以加上錯(cuò)誤處理
vara=newDate(dd)
a=a.valueOf()
a=a-dadd*24*60*60*1000
a=newDate(a)
alert(a.getFullYear()+"年"+(a.getMonth()+1)+"月"+a.getDate()+"日")
}
cc("12/23/2002",2)
</script>
24.選擇了哪一個(gè)Radio
<HTML><scriptlanguage="vbscript">
functioncheckme()
foreachobinradio1
ifob.checkedthenwindow.alertob.value
next
endfunction
</script><BODY>
<INPUT name="radio1" type="radio" value="style" checked>Style
<INPUT name="radio1" type="radio" value="barcode">Barcode
<INPUT type="button" value="check"onclick="checkme()">
</BODY></HTML>
25.獲得本頁url的request.servervariables("")集合
Response.Write"<TABLEborder=1><!--TableHeader--><TR><TD><B>Variables</B></TD><TD><B>value</B></TD></TR>"
foreachobinRequest.ServerVariables
Response.Write"<TR><TD>"&ob&"</TD><TD>"&Request.ServerVariables(ob)&"</TD></TR>"
next
Response.Write"</TABLE>"
26.
本機(jī)ip<%=request.servervariables("remote_addr")%>
服務(wù)器名<%=Request.ServerVariables("SERVER_NAME")%>
服務(wù)器IP<%=Request.ServerVariables("LOCAL_ADDR")%>
服務(wù)器端口<%=Request.ServerVariables("SERVER_PORT")%>
服務(wù)器時(shí)間<%=now%>
IIS版本<%=Request.ServerVariables"SERVER_SOFTWARE")%>
腳本超時(shí)時(shí)間<%=Server.ScriptTimeout%>
本文件路徑<%=server.mappath(Request.ServerVariables("SCRIPT_NAME"))%>
服務(wù)器CPU數(shù)量<%=Request.ServerVariables("NUMBER_OF_PROCESSORS")%>
服務(wù)器解譯引擎<%=ScriptEngine&"/" & ScriptEngineMajorVersion &"." & ScriptEngineMinorVersion & "." & ScriptEngineBuildVersion%>
服務(wù)器操作系統(tǒng)<%=Request.ServerVariables("OS")%>
27.ENTER鍵可以讓光標(biāo)移到下一個(gè)輸入框
<input onkeydown="if(event.keyCode==13)event.keyCode=9">
28.檢測某個(gè)網(wǎng)站的鏈接速度:
把如下代碼加入<body>區(qū)域中:
<scriptlanguage=javascript>
tim=1
setInterval("tim++",100)
b=1
varautourl=newArray()
autourl[1]="< src="pic/url.gif" align=absMiddle border=0>www.njcatv.net"
autourl[2]="javacool.3322.net"
autourl[3]="< src="pic/url.gif" align=absMiddle border=0>www.sina.com.cn"
autourl[4]="www.nuaa.edu.cn"
autourl[5]="< src="pic/url.gif" align=absMiddle border=0>www.cctv.com"
functionbutt(){
document.write("<formname=autof>")
for(vari=1;i<autourl.length;i++)
document.write("<inputtype=textname=txt"+i+"size=10value=測試中……>=》<inputtype=textname=url"+i+"size=40>=》<inputtype=buttonvalue=GOonclick=window.open(this.form.url"+i+".value)><br/>")
document.write("<inputtype=submitvalue=刷新></form>")
}
butt()
functionauto(url){
document.forms[0]["url"+b].value=url
if(tim>200)
{document.forms[0]["txt"+b].value="鏈接超時(shí)"}
else
{document.forms[0]["txt"+b].value="時(shí)間"+tim/10+"秒"}
b++
}
functionrun(){for(vari=1;i<autourl.length;i++)document.write("<imgsrc=http://"+autourl[i]+"/"+Math.random()+"width=1height=1onerror=auto('< src="pic/url.gif" align=absMiddle border=0>http://";+autourl[i]+"')>")}
run()</script>
29.各種樣式的光標(biāo)
auto:標(biāo)準(zhǔn)光標(biāo)
default:標(biāo)準(zhǔn)箭頭
hand:手形光標(biāo)
wait:等待光標(biāo)
text:I形光標(biāo)
vertical-text:水平I形光標(biāo)
no-drop:不可拖動(dòng)光標(biāo)
not-allowed:無效光標(biāo)
help:?幫助光標(biāo)
all-scroll:三角方向標(biāo)
move:移動(dòng)標(biāo)
crosshair:十字標(biāo)
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize
-------------------------------------------------
Kafree另外收集增加的:
1,屏蔽鼠標(biāo)右鍵、Ctrl+n、shift+F10、F5刷新、退格鍵
<body onkeydown="KeyDown()"
oncontextmenu="event.returnValue=false">
<script language="Javascript"><!--
//屏蔽鼠標(biāo)右鍵、Ctrl+n、shift+F10、F5刷新、退格鍵
//Author: meizz(梅花雨) 2002-6-18
function KeyDown(){
if ((window.event.altKey)&&
((window.event.keyCode==37)|| //屏蔽 Alt+ 方向鍵 ←
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向鍵 →
alert("不準(zhǔn)你使用ALT+方向鍵前進(jìn)或后退網(wǎng)頁!");
event.returnValue=false;
}
/* 注:這還不是真正地屏蔽 Alt+ 方向鍵,
因?yàn)?Alt+ 方向鍵彈出警告框時(shí),按住 Alt 鍵不放,
用鼠標(biāo)點(diǎn)掉警告框,這種屏蔽方法就失效了。以后若
有哪位高手有真正屏蔽 Alt 鍵的方法,請告知。*/
if ((event.keyCode==8) || //屏蔽退格刪除鍵
(event.keyCode==116)|| //屏蔽 F5 刷新鍵
(event.ctrlKey && event.keyCode==82)){ //Ctrl + R
event.keyCode=0;
event.returnValue=false;
}
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl+n
event.returnValue=false;
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
event.returnValue=false;
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnValue = false; //屏蔽 shift 加鼠標(biāo)左鍵新開一網(wǎng)頁
if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
return false;}
}
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜單
第一種方法:
window.open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二種方法是打開一個(gè)全屏的頁面:
window.open("你的.asp", "", "fullscreen=yes")
*/
// --></script>
<h2 align=center>屏蔽鼠標(biāo)右鍵、Ctrl+n、shift+F10、F5刷新、退格鍵</h2>
</body>
</html>
2,RecordSet屬性和方法
為了更精確地跟蹤數(shù)據(jù),要用RecordSet組件創(chuàng)建包含數(shù)據(jù)的游標(biāo),游標(biāo)就是儲(chǔ)存在內(nèi)存中的數(shù)據(jù)。
rs = Server.CreateObject("ADODB.RecordSet")
rs.Open(sqlStr,conn,1,A)
注:A=1讀取
A=3 新增、修改、刪除
在RecordSet組件中,常用的屬性和方法有:
rs.Fields.Count: RecordSet對(duì)象的字段數(shù)。
rs(i).Name: 第i個(gè)字段的名稱,i為0至rs.Fields.Count-1
rs(i): 第i個(gè)字段的數(shù)據(jù),i為0至rs.Fields.Count-1
rs("字段名"): 指定字段的數(shù)據(jù)。
rs.Record.Count:游標(biāo)中的數(shù)據(jù)記錄總數(shù)。
rs.EOF: 是否最后一條記錄。
rs.MoveFirst: 指向第一條記錄。
rs.MoveLast: 指向最后一條記錄。
rs.MovePrev: 指向上一條記錄。
rs.MoveNext: 指向下一條記錄。
rs.GetRows: 將數(shù)據(jù)放入數(shù)組中。
rs.Properties.Count:ADO的ResultSet或Connection的屬性個(gè)數(shù)。
rs.Properties(item).Name:ADO的ResultSet或Connection的名稱。
rs.Properties: ADO的ResultSet或Connection的值。
rs.close(): 關(guān)閉連接。
3,本地?zé)o緩存,每次自動(dòng)刷新
response.expires=0
response.addHeader"pragma","no-cache"
response.addHeader"cache-control","private"
4,修改contentType并下載gif等格式
<%
function dl(f,n)
onerrorresumenext
sets=CreateObject("Adodb.Stream")
S.Mode=3
S.Type=1
S.Open
s.LoadFromFile(server.mappath(f))
iferr.number>0then
response.writeerr.number&":"&err.description
else
response.contentType="application/x-gzip"
response.addheader"Content-Disposition:","attachment;filename="&n
response.binarywrite(s.Read(s.size))
endif
endfunction
call dl("012922501.gif","t1.gif") %>
5,常用的幾種數(shù)據(jù)庫連接代碼
1) MS Access數(shù)據(jù)庫連接
用DSN連接并且沒有用戶名和密碼:
<%
set conn = Server.CreateObject("ADODB.Connection")
conn.open "YourDSNName"
%>
2) 用DSN連接并且有用戶名和密碼:
<%
set conn = Server.CreateObject("ADODB.Connection")
conn.open "YourDSNName","username","password"
%>
3) 用實(shí)際的數(shù)據(jù)庫絕對(duì)路徑連接:
<%
Set conn = Server.CreateObject("ADODB.Connection")
Strconn="DRIVER={Microsoft Access Driver (*.mdb)}; "
Strconn=Strconn & "DBQ=e:\yanhang\database.mdb"
conn.Open Strconn
%>
4) 用實(shí)際的數(shù)據(jù)庫相對(duì)路徑連接:
<%
Set conn = Server.CreateObject("ADODB.Connection")
Strconn="DRIVER={Microsoft Access Driver (*.mdb)}; "
Strconn=Strconn & "DBQ=" & Server.MapPath("/database/yanhang.mdb")
conn.Open Strconn
%>
5) MS SQL Server數(shù)據(jù)庫連接
用DSN連接:
<%
set conn = Server.CreateObject("ADODB.Connection")
conn.open "DSN=MyDSN;UID=user;PWD=password;DATABASE=databasename"
%>
6) 不用DSN連接:
<%
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp="DRIVER={SQL Server};SERVER=ServerName;UID=USER;PWD=password;DATABASE=databasename"
conn.open DSNtemp
%>
7) FoxPro數(shù)據(jù)庫連接
<%
Set Conn = Server.CreateObject("ADODB.connection")
ConnStr= "Driver=Microsoft Visual Foxpro Driver; UID=userID;SourceType=DBC;SourceDB=C:\yanhang\database.dbc"
Conn.Open ConnStr
%>
8) Oracle數(shù)據(jù)庫連接:
<%
set conn=server.createobject("adodb.connection")
conn.cursorlocation=adUseClient
DSNTemp="Provider=MSDAORA.1;Password=xxxxx;User ID=yanhang;Data Source=xxx.world"
conn.open DSNtemp
%>
9) Paradox數(shù)據(jù)庫連接:
<%
set conn=server.createobject("adodb.connection")
conn.cursorlocation=adUseClient
DSNTemp="driver={Microsoft Paradox Driver (*.db)};DriverID=538;Fil=Paradox 5.X;DefaultDir=c:\dbpath\;Dbq=c:\dbpath\;CollatingSequence=ASCII;"
conn.open DSNtemp
%>
10) Sybase數(shù)據(jù)庫連接:
<%
set conn=server.createobject("adodb.connection")
conn.cursorlocation=adUseClient
DSNTemp="Driver={SYBASE SYSTEM 11};Srvr=myServerName;Uid=myUsername;Pwd=myPassword;"
conn.open DSNtemp
%>
11) Text數(shù)據(jù)庫連接:
<%
set conn=server.createobject("adodb.connection")
conn.cursorlocation=adUseClient
DSNTemp="Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=c:\somepath\;Extensions=asc,csv,tab,txt;Persist Security Info=False"
conn.open DSNtemp
'調(diào)用 test.csv 的文件
Set rs=server.createobject("adodb.recordset")
rs.open "select * from test.csv",conn,1,3
%>
6,使用 XML 靜態(tài)讀取網(wǎng)頁
代碼如下:
<script>
var oDiv //添加用的節(jié)點(diǎn)
var nP //DIV的 padding-left
var xh //xmlhttp
function getXML()
{
oDiv = document.all.m
oDiv.innerHTML = "正在裝載欄目數(shù)據(jù),請稍侯......."
oDiv.style.display= ""
xh = new ActiveXObject("Microsoft.XMLHTTP")
xh.onreadystatechange = getReady
xh.open("GET",a.value,true)
xh.send()
}
function getReady()
{
if(xh.readyState==4)
{
if(xh.status==200)
{
oDiv.innerHTML = "完成"
}
else
{
oDiv.innerHTML = "抱歉,裝載數(shù)據(jù)失敗。原因:" + xh.statusText
}
}
}
</script>
URL:<input name=a value="http://www.microsoft.com">
<input onclick="getXML()" type="button" value="get HTML">
<input onclick="if(xh && xh.responseText) oDiv.innerHTML=xh.responseText" type="button" value="output">
<div id=m></div>
7,SQL SERVER 和EXCEL的數(shù)據(jù)導(dǎo)入導(dǎo)出
1)、在SQL SERVER里查詢Excel數(shù)據(jù):
SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
下面是個(gè)查詢的示例,它通過用于 Jet 的 OLE DB 提供程序查詢 Excel 電子表格。
SELECT * FROM OpenDataSource ( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
2)、將Excel的數(shù)據(jù)導(dǎo)入SQL server :
SELECT * into newtable FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
實(shí)例分析:
SELECT * into newtable FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
3)、將SQL SERVER中查詢到的數(shù)據(jù)導(dǎo)成一個(gè)Excel文件
T-SQL代碼:
EXEC master..xp_cmdshell 'bcp 庫名.dbo.表名out c:\Temp.xls -c -q -S"servername" -U"sa" -P""'
參數(shù):S 是SQL服務(wù)器名;U是用戶;P是密碼
說明:還可以導(dǎo)出文本文件等多種格式
實(shí)例:EXEC master..xp_cmdshell 'bcp saletesttmp.dbo.CusAccount out c:\temp1.xls -c -q -S"pmserver" -U"sa" -P"sa"'
EXEC master..xp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout C:\ authors.xls -c -Sservername -Usa -Ppassword'
在VB6中應(yīng)用ADO導(dǎo)出EXCEL文件代碼:
Dim cn As New ADODB.Connection
cn.open "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"
cn.execute "master..xp_cmdshell 'bcp "SELECT col1, col2 FROM 庫名.dbo.表名" queryout E:\DT.xls -c -Sservername -Usa -Ppassword'"
4)、在SQL SERVER里往Excel插入數(shù)據(jù):
insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\Temp.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...table1 (A1,A2,A3) values (1,2,3)
T-SQL代碼:
INSERT INTO OPENDATASOURCE('Microsoft.JET.OLEDB.4.0', 'Extended Properties=Excel 8.0;Data source=C:\training\inventur.xls')...[Filiale1$] (bestand, produkt) VALUES (20, 'Test')
總結(jié):利用以上語句,我們可以方便地將SQL SERVER、ACCESS和EXCEL電子表格軟件中的數(shù)據(jù)進(jìn)行轉(zhuǎn)換,為我們提供了極大方便!