无法加载简单的功能

时间:2011-08-30 13:50:40

标签: javascript html function

这是我的代码

<script type="text/javascript" href="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" href="js/js.js"></script>
...
<input type="text" name="city" onkeyup="loadStation(this.value);"/>
...

和js.js文件

//Load Stations
function loadStation(stationCity){
  alert(stationCity);
}

当我尝试触发loadStation onkeyup时,没有任何事情发生。 js / js.js的路径是可以的,因为在源代码中我可以加载它。

可能出现什么问题?

修改

我真的很愚蠢....而不是href =“”它应该是src =“”。最有趣的是,即使你们都没有注意到它:P

由于

2 个答案:

答案 0 :(得分:4)

<德尔> 你可能错了`js / js.js` 我建议使用Firebug并检查您是否从js文件中收到404错误。 您可能想要使用js文件的根相对链接:`/ js / js.js`,这样您就不会遇到子目录问题。

often professed the beauty of HTML CSS & JavaScript as an MVC pattern。所以我不会在这里进入。您应该将HTML保存在.html个文件中,将您的CSS保存在.css个文件中,将JavaScript保存在.js个文件中

使用内联javascript事件属性打破了我经常描述的漂亮的MVC模式,因此在脚本本身附加事件要好得多:

//wrap this in a document.ready or window.onload event callback
//-or-
//place the script *after* the input element has been added to the dom
var input;
//replace with whatever selector 
input = document.getElementsByTagName('input')[0];works
input.onkeyup = function(){ loadStation(this.value) };

...more code...

function loadStation(val)
{
  alert(val);
}

Fiddle

<德尔> 还有一些调试问题:  *你正在测试一个平面的html&amp; js文件在本地?  *您是否将平面文件上传到服务器?  *您是否可以发布内容所在位置的网址?

您在href元素上使用的是src而不是script

答案 1 :(得分:0)

尝试在js文件中添加这样的onkeyup:

$('body').ready(function(){
     $('#idOfInput').onkeyup(function(){
         loadStation(this.value)
     });
});