获得$ undefined,即使我引用了lib

时间:2014-09-12 21:11:04

标签: javascript jquery

我使用:

引用了JQuery库
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js" type="text/javascript"></script> 

我甚至尝试下载lib并将其放在我的项目中。但我仍然得到一个JS错误,说:ReferenceError:$未定义

它指出了这行代码:

$("#navn").val() = localStorage.getItem("navn");

奇怪的是,在storeInfo()函数中,它没有抱怨,它的工作原理应该存在。

怎么突然说它没有引用JQuery?

var navn = null;
var adr = null;
var city = null;

function storeInfo() {
    navn = $("#navn").val();
    alert("Works");
    localStorage.setItem("navn", navn);
}

if (typeof (Storage) !== "undefined") {

    if (localStorage.getItem("navn") !== "undefined" || localStorage.getItem("navn") !== null) {
        alert(localStorage.navn);
        $("#navn").val() = localStorage.getItem("navn");  <------ Problem is here
    }

} else {
    alert("Local storage ikke understøttet af din browser");
}

2 个答案:

答案 0 :(得分:2)

val既是吸气者又是定位者。执行val()时,它返回一个值。您无法将函数的结果分配给某些内容,从而导致错误。你想要:

$("#navn").val(localStorage.getItem("navn"))

另外,正如Barmar指出的那样,检查jQuery是否正确加载,并使用dom ready事件:

$(function(){
  // code here
})

答案 1 :(得分:0)

全部谢谢

问题是我在调用代码后添加了对JQuery libraray的引用。所以我将引用移到了顶层的JQuery库,这解决了它。