Question

Je suis en train de passer 2 paramètres à un webview.loadUrl("javascript: function_to_call();"); javascript code function.This fonctionne très bien sans paramètres, mais je ne pouvais pas l'utiliser avec des paramètres.

Ceci est la jonction 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);
}

Et voilà comment je l'appelle de java:

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

Edit: Je ne pouvais pas trouver le problème et je changé mon approche, maintenant je suis injectais toute fonction javascript avec les changements souhaités à chaque fois quand je dois. Il n'est pas la meilleure solution, mais cela fonctionne. Merci à tous pour votre aide.

Était-ce utile?

La solution

Qu'est-ce que vous avez l'air bien. Voici un exemple de projet qui démontre une syntaxe presque identique.

Autres conseils

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

pour webView.loadUrl("javascript:changeLocation( '-0.1279688' ,'51.5077286' );") ; et peut-être se débarrasser de la ;

Je viens d'avoir un problème similaire et je l'ai fixé en ajoutant le '' autour de mon paramètre. Je n'ai pas eu un point-virgule dans ma solution soit et cela a fonctionné de sorte que vous devrez peut-être supprimer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top