表达式'$ .mobile'[undefined]的结果不是对象

时间:2012-06-11 00:46:40

标签: javascript html5 jquery-mobile cordova local-storage

我是jquery mobile的新手,我开发了一个带有jquery mobile和phoneGap以及localstorage Html的移动应用程序,我想在page.html中保存一个输入值,然后我将使用localstorage.getitem检索这个值并使用在网址中,当我添加此行value=localStorage.getItem('myStorage');时出现问题我无法连接到我的应用,我收到了此错误:

  

表达式'$ .mobile'[undefined]的结果不是对象。在   文件:///android_asset/www/js/application.js:258

这是我保存输入值的应用程序 的application.js

function setMessage() {
    var firstName=document.getElementById('addresseip');
    alert("Hello " + firstName.value + ", hope you like JavaScript functions!")

                    localStorage.setItem('myStorage', firstName.value);

}

这是我在同一页面.js中对此值的调用,输入vaule是param.html,对此值的调用是在index.html中:

function showUser(){
 value=localStorage.getItem('myStorage');
val1 = document.getElementById("name").value;
val2 = document.getElementById("pass").value;

if (val1=="")
  {
   showdialog("Verifiez login et mot de passe","Erreur");
  } 
  else{
     alert("test"+value);    
  $.mobile.showPageLoadingMsg();    
   var geturl;
  geturl = $.ajax({  

   url:"https://"+value+":80/B/authenticate",  
   //url:"https://10.0.2.2:80/B/authenticate",  
   dataType:"json",
   timeout:10000000,  
   cache:false,
   type:'GET',
   beforeSend : function(req) {
             req.setRequestHeader('Authorization', 
                   make_base_auth (val1, val2));
        },
   error:function(XMLHttpRequest,textStatus, errorThrown) { 
   $.mobile.hidePageLoadingMsg();
   showdialog("Verifiez login et mot de passe","Erreur"); 
   },   
   success:function(results) { 
   if(results==true){

    $.mobile.changePage("bienvenu.html","fade");
    $.mobile.hidePageLoadingMsg();  
   }

我的错误是一行$ .mobile.showPageLoadingMsg();

你能帮帮我吧 感谢

2 个答案:

答案 0 :(得分:0)

由于$.mobileundefined,我猜是没有加载jquery移动库。在调用showUser()之前检查您是否已加载jquery和jquery mobile。

答案 1 :(得分:0)

除了加载jQuery之外,你还应该包含jQM。还要确保使用jQM的代码包含在其后面。

<script src="//code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
<script src="yourscripts.js"></script>

<script src="//code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
<script>
    /* Your code here */
</script>