推薦:淺析ASP AJAX做類似google的搜索提示主要要文件有: Index.html 實現功能,一個文本框,輸入內容並實現提示search.asp 查詢功能,讓文本框輸入的內容在數據庫中查詢,然後返回給客戶端conn.asp 數據庫連接功能,實現與
目前已經有很多生成html的新聞系統,但是都是用的模板,本函數實現把asp頁面產生的html代碼保存成為一個html文件,這樣就沒有必要改動原來的頁面就可以輕鬆
完成一個生成html的新聞系統了。 ^_^
由於代碼比較短,這裡就不進行註釋了
<%
'當目標頁面的包含文件即#include的頁面裡邊存在response.End()的時候本程序有問題
'注意:本文件一定要放在filename指向的文件的同一目錄下
| 以下為引用的內容: dim hughchiu_rtcode Function get_exe_code(filename) dim execode dim tmp_str Dim re,re1,content,fso,f,aspStart,aspEnd dim ms,m execode = set fso=CreateObject(Scripting.FileSystemObject) set f=fso.OpenTextFile(server.mappath(filename)) content=f.ReadAll f.close set f=nothing set fso=nothing set re = new regexp re.ignorecase = true re.global = true re.pattern = <%@[^%] %> content = re.replace(content,) re.global = false re.pattern = <!--s*#includes*files*=s*([^] )s*--> do set ms = re.execute(content) if ms.count<>0 then set m = ms(0) tmp_str = get_exe_code(m.submatches(0)) content = re.replace(content, tmp_str) else exit do end if loop set m = nothing set ms = nothing re.pattern=^s*= aspEnd=1 aspStart=inStr(aspEnd,content,<%) 2 set re1=new RegExp re1.ignorecase = true re1.global = false re1.pattern = response.Write(. ) do while aspStart>aspEnd 1 execode = execode&vbcrlf& hughchiu_rtcode = hughchiu_rtcode&&replace( replace(Mid(content,aspEnd,aspStart-aspEnd-2),,), vbcrlf, &vbcrlf&)&&vbcrlf aspEnd=inStr(aspStart,content,%>) 2 tmp_str = Mid(content,aspStart,aspEnd-aspStart-2) do set ms = re1.execute(tmp_str) if ms.count<>0 then set m = ms(0) tmp_str = re1.replace(tmp_str, hughchiu_rtcode = hughchiu_rtcode&&m.submatches(0)) else exit do end if loop set m = nothing set ms = nothing execode = execode& re.replace(tmp_str,hughchiu_rtcode = hughchiu_rtcode&) aspStart=inStr(aspEnd,content,<%) 2 loop set re1 = nothing set re=nothing execode = execode&vbcrlf& hughchiu_rtcode = hughchiu_rtcode&&replace( replace(Mid(content,aspEnd), , ), vbcrlf, &vbcrlf& ) &&vbcrlf get_exe_code = <%&execode&%> End Function function asp2html(filename) dim code code = replace( replace( replace( get_exe_code(filename), hughchiu_rtcode = hughchiu_rtcode&&vbcrlf, ), <%, ), %>, ) 'response.Write(code) execute(code) 'response.Write( hughchiu_rtcode ) asp2html = hughchiu_rtcode end function %> |
使用範例:
| 以下為引用的內容: f.WriteLine( asp2html(youpage.asp) ) f.close set f = nothing set fso = nothing |
分享:通過啟動腳本感知ASP的力量和大多數的語言腳本一樣,學習ASP最好的方法就是親身嘗試ASP,使用你自己的系統安裝PWS或者IIS。你可以邊學習邊在你自己的服務器上測試ASP組件和函數。為了方便學習,我們已經編譯了一些操