2014-03-06 96 views
-2

編輯回答下面,與文件準備:)任何想法爲什麼這個jquery不工作?

我實際上試圖獲得HTML5的可爭辯的功能保存到ajax,然後到我的MYSQL表..但由於某種原因,我甚至不能得到這個Javascript來彈出。當我看着我的控制檯時,我只能看到'測試控制檯'調試。任何想法,爲什麼這不是爲我工作。我附上了html和下面的JavaScript文件。

var script = document.createElement('script'); 
script.src = '//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js'; 
script.type = 'text/javascript'; 
document.getElementsByTagName('head')[0].appendChild(script); 

console.log('Testing console'); 

$("#target").keyup(function() { 
    alert("Handler for .keyup() called."); 
    console.log('Tasdasdasdasdasdasd'); 

}); 


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" 
"http://www.w3.org/TR/html4/strict.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
    <head> 
     <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
     <script type="text/javascript" src="new_file.js"></script> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <title>testing</title> 
     <meta name="author" content="Gaming" /> 
     <!-- Date: 2014-03-06 --> 
    </head> 
    <body> 
     <form> 
     <input id="target" type="text" value="Hello there"> 
     </form> 
     <div id="other"> 
     Trigger the handler 
     </div> 
    </body> 
</html> 
+0

文件準備就緒? –

+0

爲什麼要包含jQuery兩次? – Phil

+0

在你的問題中存在javascript ......這是'new_file.js'中的JavaScript嗎? –

回答

5

主要原因是您試圖在jQuery甚至加載之前通過jQuery綁定處理程序!確保你的jQuery腳本在你的聲明之後,然後根據你可能需要的DOM準備好的處理程序。

你必須等待,直到你的DOM準備結合處理,包你的JQ在DOM準備好處理程序:

$(document).ready(function() { 
    $("#target").keyup(function() { 
     alert("Handler for .keyup() called."); 
     console.log('Tasdasdasdasdasdasd'); 

    }); 
}); 

或者把你的代碼在頁面的末端。

+0

他試圖在存在之前使用jquery,除非我錯過了解釋這個問題。 –

+0

@KevinB - 是的,看起來它可能是一個問題,大聲笑,虐待編輯答案。 – tymeJV

+0

我想他只是不知道如何分開兩個代碼段,在這種情況下,您的答案可以解決他的問題。他仍然包括一個不必要的jQuery的第二個副本,但它不會實際上破壞我想要的任何東西。 –

相關問題