2010-11-16 5 views
2

J'essaye de passer 2 paramètres à une fonction de javascript. Ce code webview.loadUrl("javascript: function_to_call();"); fonctionne bien sans paramètres mais je ne pourrais pas l'employer avec des paramètres.comment appeler la fonction javascript paramétrée dans le WebKit?

C'est javascript jonction:

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 J'injecte la fonction javascript entière avec les changements désirés chaque fois que je dois. Ce n'est pas la meilleure solution, mais cela fonctionne. Merci à tous pour votre aide.

+0

@dirhem: Est-ce 'loadUrl()' (note: capitale U) sur le widget 'WebView' en Java? Ou autre chose? – CommonsWare

+0

@ CommonsWare Désolé, j'ai mal tapé ici et oui, c'est la fonction loadUrl du widget WebView. – dirhem

+0

Pourriez-vous poster le code source qui vous pose problème? De plus, y a-t-il des messages d'erreur? – Jake

Répondre

4

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

-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 non plus eu de point-virgule dans ma solution et cela a fonctionné, donc vous devrez peut-être l'enlever.

Questions connexes