2014-02-05 169 views
1

我絕對不是一個腳本的新手,但這只是讓我難以置信。我想在按鈕點擊時調用一個函數,所以我首先想要獲取buttonclick事件並用一個簡單的window.alert來測試它。所以我只寫了下面的html文檔。如何獲取JavaScript警報?

<!doctype html> 
    <head> 
     <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function(){ 
       $("#sendButton").click(function(){ 
        alert("clicked!!"); 
       }); 
      }); 
     </script> 
    </head> 
    <body> 

     <form id="send-message-area"> 
      <input type="button" id="sendButton" value="Send Message"> 
     </form> 
    </body> 

不幸的是,沒有任何反應。完全一樣。由於這是相當簡單的代碼,我不知道爲什麼這不起作用。

+0

,如果你把你的警報點擊之外,會發生什麼?我想知道如果doc.ready()沒有被調用或點擊 – Liath

+1

它的工作.... http://jsfiddle.net/HbUs3/ –

+0

檢查您的控制檯的錯誤,然後通過發佈錯誤消息來改善您的問題如果有... –

回答

4

您的腳本標記拉jQuery使用(Common|General) Internet Syntax Scheme。這告訴瀏覽器在加載腳本時使用任何用於加載頁面的方案。對於同時響應http和https的站點很有幫助。

如果您使用file://方案在本地查看文件,則應該看到$未定義的錯誤。這是因爲腳本並不住在:

file://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js 

請在本地加載時使用此SRC的腳本標籤:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
+0

有什麼理由呢? Chrome本地文件? –

+0

OP有一個有效的鏈接。測試http://jsfiddle.net/HbUs3/3/ –

+1

除非OP使用'file://'方案在本地機器上查看文件。那麼會有問題。 – JAAulde

1

代碼看起來很好

我想你在IE瀏覽器正在測試< 9(jQuery 2.x不支持IE 8)

請更換瀏覽器或加載jQuery 1.9之類的版本並進行測試

2

根據您的網址//開始,如果您使用類似file://的網址在本地測試您的網站,瀏覽器會嘗試從您的本地文件系統加載該文件。在這種情況下,您不會加載jQuery,因此$未定義,您的代碼也未執行。

使用script標籤一樣,本地測試:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 

如果你運行一個Web服務器上的網站時,CDN風格開始//將再次合作。

2

如果您將它託管在某處,則src路徑應該是完整的。您沒有向jquery庫添加正確的路徑。一旦你這樣做,一切都會相應地工作。

<script src="http://code.jquery.com/jquery-latest.js"></script> 

Demo

+2

在OP發佈的代碼中,CDN鏈接是正確的 –

+1

@ A.Wolff:你不認爲缺少http將嘗試加載庫,如果它託管在某處。 –

+0

使用'http:'不是一個好主意,因爲事先並不知道CDN協議 – Bikas

0

必須更新查詢腳本SRC爲「http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js

我建議下載jQuery腳本然後將其添加到您的項目在本地而不是遠程一個

+0

只要您不在本地計算機上查看它,// ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js'就可以了,它只是一個獨立於協議的鏈接。 –

0

使用<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js">並練習插入html標籤

HTML

<!doctype html> 
<html> 
    <head> 
     <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function(){ 
       $("#sendButton").click(function(){ 
        alert("clicked!!"); 
       }); 
      }); 
     </script> 
    </head> 
    <body> 

    <form id="send-message-area"> 
     <input type="button" id="sendButton" value="Send Message"> 
    </form> 
</body> 
</html> 
0

你缺少包括http:/scriptsrc

要麼改變你的腳本標籤是這樣的:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 

或下載Jquery文件並在本地參考。

0

你的路徑更改爲

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 

,並嘗試使用jQuery的1.10小於IE9瀏覽器

<!--[if lt IE 9]><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script><![endif]--> 
<!--[if IE 9]><!--><script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script><!--<![endif]-->