服務(wù)熱線
153 8323 9821
調(diào)試aspx網(wǎng)頁遇到的一個(gè)問題搞的心情很不爽
aspx網(wǎng)頁是一個(gè)查詢條件的設(shè)置頁面,我使用了一個(gè)js文件,里面寫有一個(gè)顯示日歷的腳本,在aspx頁面上點(diǎn)擊輸入框,顯示出日歷,讓用戶來選擇起止日期。
這個(gè)頁面是一個(gè)完全沒問題的頁面,原來在asp下已經(jīng)實(shí)現(xiàn)了。所以我就直接粘貼過來,結(jié)果運(yùn)行不正確,提示好多變量未定義,而且提示缺少對象的錯(cuò)誤。搞了一上午都沒有成功,由于是原來運(yùn)行正常的頁面,現(xiàn)在老調(diào)試不出來,因此很是不爽。
下午在狂怒之下,發(fā)誓一定要搞定他。就開始一個(gè)一個(gè)的查找未定義變量的問題,結(jié)果發(fā)現(xiàn)全部是在js文件里,由此開始懷疑js文件沒有發(fā)揮作用,也就是說這個(gè)項(xiàng)目中根本沒有承認(rèn)js文件的存在。經(jīng)過反復(fù)試驗(yàn),證實(shí)了自己的猜測,js文件無論是直接拷貝到項(xiàng)目目錄下,還是在項(xiàng)目中先建立js文件然后再寫內(nèi)容,js文件都不被項(xiàng)目所認(rèn)可,調(diào)用js中的方法等均會提示錯(cuò)誤。
通過上網(wǎng)搜索,找到如下解決方法:
1、采用服務(wù)器端包括語法,將原先的js文件改后綴名為inc文件,在aspx文件中要調(diào)用js文件的地方改寫為:
<!--#Include File="yourjsfile.inc"-->
當(dāng)然,你的inc文件中不能忘記寫上標(biāo)簽:
<script language=javascript></script>
或者這樣
<script language="javascript">
<!--#Include File="yourjsfile.js"-->
</script>
2、如果外連js文件中有中文,必須在web.config中加入如下設(shè)置:
<system.web>
<globalization responseEncoding="gb2312" requestEncoding="gb2312" fileEncoding="gb2312"/>
<system.web>
第二種方法我覺得是最簡單的方法,第一種方法要是js中有中文的話,也必須設(shè)置,因此用第二種方法可謂是兩者具到