2011-12-22 80 views
2

這實際上是一個Adobe AIR應用程序,但由於我遇到的問題是非常基本的JavaScript,因此我認爲我應該把它放在這裏。無法調用JavaScript函數 - ReferenceError:無法找到變量

下面是代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>KM Ciclo de Servicio</title> 
<link href="css/style.css" rel="stylesheet" type="text/css" /> 
<link href="css/ciclo.css" rel="stylesheet" type="text/css" /> 
<script src="script/jquery-1.7.1.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
function changefield() 
{ 
    #('#ciclo').append('ASD'); 
} 
</script> 
</head> 
<body oncontextmenu="return false;"> 
<div id="topMenu"> 
    <button class="menuItem" id="new" title="Nuevo"><img src="images/new.png" alt="Nuevo"/></button> 
    <button class="menuItem" id="save" title="Guardar"><img src="images/save.png" alt="Guardar"/></button> 
    <button class="menuItem" id="open" title="Abrir"><img src="images/open.png" alt="Abrir"/></button> 
    <input type="text" value="Momento cambiado" onkeypress="changefield()"/> 
     <div style="display: inline-block; float: right;"> 
     Nuevo: 
     <button class="menuItem" id="momento">Momento</button> 
     <button class="menuItem" id="atributo">Atributo</button> 
    </div> 
</div> 
<div id="main" align="center"> 
    <div id="ciclo"></div> 
</div> 
<script src="script/init.js" type="text/javascript"></script> 

</body> 
</html>  

這是我想調用的函數:

<script type="text/javascript"> 
function changefield() 
{ 
    #('#ciclo').append('ASD'); 
} 
</script> 

然而,我的終端告訴我有上line 20一個錯誤,那就是:

<input type="text" value="Momento cambiado" onkeypress="changefield()"/> 

錯誤說:

ReferenceError: Can't find variable: changefield
onkeypress at app:/index.html : 19

我檢查了一些關於JavaScript函數的教程以確保(包括w3schools中的一個),並且似乎沒有任何錯誤。我正在調用函數,這些教程是如何建議我這樣做的。

關於發生了什麼事情的任何想法?

回答

5

正確的語法是:

function changefield() 
{ 
    $('#ciclo').append('ASD'); 
} 

這是一個javascript語法錯誤:不被定義

#('#ciclo').append('ASD'); 

這引起了變化區域的功能。

+0

你是對的!不能相信我在代碼中犯了這樣的錯字哈哈。那麼,謝謝你指出,它現在可以工作。 – ZoeStellan 2011-12-22 19:07:43

3

問題可能是jQuery的創建$變量,而不是#

function changefield() 
{ 
    $('#ciclo').append('ASD'); 
} 
3

因爲#應該$

function changefield() { 
    $('#ciclo').append('ASD'); 
} 

SyntaxError是造成changefield功能無法創建這樣的直列onkeypress couldn找不到它。

+0

該死的,但你的名字很煩人,而且基本上不可能直接響應臺式機/筆記本電腦以外的任何設備。 – 2011-12-22 19:39:12

+0

@DaveNewton是的,我是一個麻煩製造者。抱歉。 – 2011-12-22 19:53:20

+0

沒有麻煩,只是故意排除,這有點違背這一點。隨你。 – 2011-12-22 20:17:06

相關問題