3

我正在尝试将 2 个参数传递给 javascript 函数。此代码webview.loadUrl("javascript: function_to_call();");在没有参数的情况下可以正常工作,但我无法将其与参数一起使用。

这是 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);
}

这就是我从 java 中调用它的方式:

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

编辑:我找不到问题,我改变了我的方法,现在我每次需要时都会注入整个 javascript 函数并进行所需的更改。这不是最好的解决方案,但它确实有效。感谢大家的帮助。

4

2 回答 2

8

你所拥有的看起来不错。这是一个示例项目,它演示了几乎相同的语法。

于 2010-11-16T16:19:36.257 回答
6

尝试改变webView.loadUrl("javascript:changeLocation( -0.1279688 ,51.5077286 );") ;

webView.loadUrl("javascript:changeLocation( '-0.1279688' ,'51.5077286' );") ; ,也许摆脱;

我刚刚遇到了类似的问题,我通过添加''around 我的参数来解决它。我的解决方案中也没有分号,并且它有效,因此您可能需要将其删除。

于 2012-07-26T19:26:32.327 回答