Domanda

Sto cercando di passare 2 parametri a un codice di webview.loadUrl("javascript: function_to_call();"); function.This javascript funziona bene senza parametri, ma non ho potuto usarlo con i parametri.

Questa è giunzione javascript:

function changeLocation(_lon , _lat){
    var zoom=16;
    var lonLat = new OpenLayers.LonLat( _lon , _lat ).transform(         
        new OpenLayers.Projection("EPSG:4326"), 
        map.getProjectionObject());

    map.setCenter (lonLat, zoom);
}

E questo è come io lo chiamo da Java:

webView.loadUrl("javascript:changeLocation( -0.1279688 ,51.5077286 );") ;

Edit: non riuscivo a trovare il problema e ho cambiato il mio approccio, ora sto iniettando intera funzione JavaScript con modifiche desiderate ogni volta quando ho bisogno di. Non migliore è la soluzione, ma funziona. Grazie a tutti per il vostro aiuto.

È stato utile?

Soluzione

Quello che devi guarda bene. Ecco un progetto di esempio che illustra una sintassi quasi identico.

Altri suggerimenti

Prova a cambiare webView.loadUrl("javascript:changeLocation( -0.1279688 ,51.5077286 );") ;

per webView.loadUrl("javascript:changeLocation( '-0.1279688' ,'51.5077286' );") ; e forse sbarazzarsi del ;

Ho appena avuto un problema simile e ho riparato con l'aggiunta del '' intorno al mio parametro. Non ho avuto un punto e virgola nella mia soluzione sia e ha funzionato quindi potrebbe essere necessario rimuoverlo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top