北大青鳥學(xué)員肖璨分享關(guān)于JavaScript的兩則經(jīng)驗(yàn)
眾所周知,在網(wǎng)頁設(shè)計上人們都提倡內(nèi)容、樣式、行為這三者相分離的原則。內(nèi)容,顧名思義就是要在網(wǎng)頁上展示的文字、圖片等,樣式就是用來修飾和美化內(nèi)容的CSS樣式表,行為指的就是可以在網(wǎng)頁上產(chǎn)生一些動作的JavaScript代碼。所以在網(wǎng)站開發(fā)時,一般都會為CSS樣式表文件和JavaScript代碼文件新建兩個單獨(dú)的文件來分別存放。今天,筆者要淺談一下在JSP頁面中引入外部js文件時應(yīng)注意的一些問題。
第一、外部js文件的編碼要與JSP頁面的編碼保持一致
我們都知道在JSP頁面調(diào)用外部JavaScript代碼之前都需要使用“<script src=”text/javascript” src=”外部js文件的路徑”></script>”這句話來引入外部js文件。筆者在這里要強(qiáng)調(diào)的是外部js文件的編碼一定要與JSP頁面的編碼保持一致,否則會出現(xiàn)中文亂碼。
第二、比如說JSP頁面的編碼是UTF-8,那么要引入的外部js文件的編碼也應(yīng)該是utf=8的。那么如何設(shè)置外部js文件的編碼呢?在編輯完外部js文件后保存的時候,會提示我們選擇保存路徑和編碼等,在此我們把編碼設(shè)置為UTF-8就行了。
第三、在數(shù)據(jù)庫中數(shù)據(jù)表里的字符型列的數(shù)據(jù)類型應(yīng)該盡量采用nvarchar2
這個問題容易被忽視掉,但它確實(shí)會引起一些麻煩。這里筆者就拿表單驗(yàn)證來舉例說明。如果數(shù)據(jù)表中的某一字段是varchar2類型,這樣就會出現(xiàn)一些問題。什么問題呢,待筆者慢慢講來。假設(shè)數(shù)據(jù)表里的用戶名字段的數(shù)據(jù)類型是varchar2(10),在調(diào)用外部js文件里的函數(shù)驗(yàn)證用戶名時,如果我們把驗(yàn)證用戶名的長度設(shè)置為10,這個時候我們在用戶名文本框里輸入10個中文字符,確實(shí)可以通過表單驗(yàn)證,但是在把數(shù)據(jù)插入到數(shù)據(jù)庫的時候,對不起,你插不進(jìn)去,Eclipse的控制臺會輸出提示,大致意思是輸入的數(shù)據(jù)超過了數(shù)據(jù)表字段的最大長度,無法插入數(shù)據(jù)。這個時候,有些同學(xué)會問,我明明通過了表單驗(yàn)證,為什么數(shù)據(jù)會插入失敗呢?這個問題就要聯(lián)系到數(shù)據(jù)庫字段數(shù)據(jù)類型的知識了。我們知道varchar2是以8個比特位為單位來存儲字符的,而一個中文字符要占16個比特位,也就是說varchar2(10)這個類型最多只能存儲5個中文字符。知道了問題的根源之后,我們可以通過把字段的數(shù)據(jù)類型設(shè)置為nvarchar2(10)的方式來解決這個問題。原因就是nvarchar2類型是以16位Unicode字符來存儲單個字符的。這樣就可以解決JavaScript表單驗(yàn)證與實(shí)際的往數(shù)據(jù)庫插入數(shù)據(jù)的結(jié)果相矛盾的問題了。當(dāng)然了,這個原則在調(diào)用頁面內(nèi)部JavaScript腳本進(jìn)行表單驗(yàn)證時也是適用的。
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對在線咨詢老師進(jìn)行一對一問答!
推薦資訊
- 鄭州哪所技校計算機(jī)專業(yè)好... 2019-03-27
- 現(xiàn)在學(xué)軟件開發(fā)好就業(yè)嗎?... 2013-08-08
- 河南計算機(jī)學(xué)校排名哪家學(xué)校比較... 2018-06-29
- 鄭州北大青鳥網(wǎng)絡(luò)安全工程師培訓(xùn)... 2015-11-23
- 值得一讀的面試禮儀注意事項... 2012-12-09
熱點(diǎn)資訊
- 北大青鳥辯論賽激情上演... 2012-10-13
- 鄭州北大青鳥學(xué)子演講稿展示:感... 2012-10-13
- 青鳥學(xué)社中州大學(xué)助教活動有感... 2012-10-13
- 青鳥學(xué)員生日Party... 2012-10-13
- 北大青鳥學(xué)員肖璨分享關(guān)于JavaSc... 2012-10-13