2010-08-24 31 views
0

下工作我正在通過JavaScript保護以下HTML文件。JavaScript在Firefox下工作,但不能在IE

它可以很好地適用於Firefox,不過,當它用IE打開時,JavaScript似乎沒有被調用。點擊超級鏈接後直接顯示grading.pdf。

<HTML> 
<HEAD> 
<TITLE>JavaScript Example 8</TITLE> 

<SCRIPT language="JavaScript"> 
<!-------- 

var password; 

var pass1="test"; 

password=prompt('Please enter your password to view this page!',' '); 

if (password==pass1) 
    alert('Password Correct! Click OK to enter!'); 
else 
    { 
    window.location="jpass.htm"; 
    } 

//-----------> 
</SCRIPT> 

</HEAD> 

<BODY bgcolor="#FFFFFF" text="#000000"> 

<!--<H1 align="center"><a href="grades.pdf">grading</a></H1>--> 

<CENTER> 
<!--<A HREF="grades.htm">Grading</A>--> 
<a href="grades.pdf">grading</a> 
+3

我的評論與您的​​問題沒有直接關係......但對我來說,使用javascript的密碼很容易破解。只需要做「查看源代碼」並且你有密碼。使用服務器端密碼保護不是更安全嗎?否則,有一些我錯過了。 – Gabriel 2010-08-24 02:37:53

+0

可以肯定,請*請*不要將[JavaScript](http://en.wikipedia.org/wiki/JavaScript)與[JavaServer Pages](http://en.wikipedia.org/wiki)混淆/ JavaServer_Pages)。這是兩件完全不同的事情。我刪除了JSP標籤。 – BalusC 2010-08-24 02:51:03

+0

password = prompt('請輸入您的密碼來查看此頁!',''),看到這個代碼我認爲你應該把''代替'',因爲在你的提示中它將有一個默認的一個空白,用戶可以如果他/她輸入密碼,則不會看到領先的空白。另一種方法是修改輸入的密碼。 – Manie 2010-08-24 02:55:04

回答

2

IE 8和上述使提示一個不安全的方法,該方法可以忽略,或調用一個安全的確認,如在由用戶IE的高級屬性設置。 (IE在window.prompt中使用activeX)

安全更新也可能將此行爲應用於IE7。

從輸入字段而不是提示獲取輸入,至少在IE中。

相關問題