2015-10-13 16 views
5

ho due dispositivi uno con Lollipop e uno con Kitekat ... quello con Lollipop non segnala alcun errore ma quando provo la mia applicazione ottengo questo errore:Errore javascript Cordova: non ha alcun metodo avviato con Android

10-13 16:56:56.126: I/chromium(6322): [INFO:CONSOLE(99)] "Uncaught 
TypeError: Object ALIM. IL SOLE DI LOPARDO MARIANGELA has no 
method 'startsWith'", source: file:///android_asset/www/soggetti3.html (99) 

qui è una parte della mia javascript:

function onDeviceReady() { 

     window.rancolor=ranColor(); 

     var ricerca=localStorage.getItem('testo_ricerca'); 
     var risultati = JSON.parse(localStorage["risultati"]); 

     var ricerca1=ricerca.toString(); 
     ricerca1=ricerca1.toUpperCase(); 
     var res_match=[]; 

     var lll=risultati.length; 

     for(var r=0;r<lll;r++){ 

      var ppp0=risultati[r][1].toString(); 
      var ppp1=risultati[r][0].toString(); 
      var ppp2=risultati[r][2].toString(); 
      var ppp3=risultati[r][3].toString(); 

      ppp0=ppp0.toUpperCase(); 
      alert(ppp0); 
      alert(ricerca1); 
      var check=ppp0.startsWith(ricerca1); 

      if(check==true){ 
       res_match=res_match.concat([[ppp1,ppp0,ppp2,ppp3]]); 
      } 

     } 
     var y=res_match.length; 

come devo cercare un array di stringhe che cercano le stringhe che iniziano con qualche altra stringa?

+0

si prega di inviare un po 'di codice per soggetti3.html – Dilberted

+0

vedere le modifiche, grazie ... – Lorenzo

risposta

11

Il modo più semplice per implementare la funzione startWith Di seguito è mostrata, quindi è possibile utilizzare startsWith nel codice:

if (typeof String.prototype.startsWith != 'function') { 
    // see below for better implementation! 
    String.prototype.startsWith = function (str){ 
    return this.indexOf(str) === 0; 
    }; 
} 
+1

grazie amico funziona! ma non capisco il fatto che per alcuni dispositivi si avvia Con definizione e per gli altri no ... il codice era lo stesso! – Lorenzo

+1

Sia che start sia disponibile dipenderà dal motore del tuo browser ... sembra che il browser Android non l'abbia implementato in JS ma Chrome visualizza la scheda mobile qui https://developer.mozilla.org/en-US/docs/Web/JavaScript/Riferimento/Global_Objects/String/startsWith –

+2

O semplicemente utilizzare 'str1.indexOf (str2) === 0' –

Problemi correlati