2011-12-22 50 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

相关问题