2012-02-10 11 views
1

我有一些trouvle从HTML页面调用具有多个参数的JavaScript函数是我在做什么:如何使用silverlight项目中的多个参数调用javascript函数?

wbNavigator.Navigate(new Uri("http://localhost:56433/route.html" ,UriKind.Absolute)); 
object results= wbNavigator.InvokeScript("calculer", new string[] {"3.072526", "36.766942", "3.042526", "36.766942"}); 

但是调用的时候什么也没有hapening .AM我失去了一些东西? 这是我的javascript代码:

<script type="text/javascript"> 
     var directionsService = new google.maps.DirectionsService(); 
       var directionsDisplay = new google.maps.DirectionsRenderer(); 
       var myOptions = { 
        zoom: 7, 
        mapTypeId: google.maps.MapTypeId.ROADMAP 
       } 
     function calcluer(lon_A, lat_A, lon_B, lat_B) { 
      var map = new google.maps.Map(document.getElementById("map"), myOptions); 
      directionsDisplay.setMap(map); 
      var salle2 = new google.maps.LatLng(lat_A, lon_A); 
      var salle3 = new google.maps.LatLng(lat_B, lon_B); 
      var request = { 
       origin: salle2, 
       destination: salle3, 
       travelMode: google.maps.DirectionsTravelMode.DRIVING 
      }; 
     directionsService.route(request, function (response, status) { 
      if (status == google.maps.DirectionsStatus.OK) { 
       // Display the distance: 
       document.getElementById('distance').innerHTML += 
       response.routes[0].legs[0].distance.value + " meters"; 
       // Display the duration: 
       document.getElementById('duration').innerHTML += 
       response.routes[0].legs[0].duration.value + " seconds"; 
       directionsDisplay.setDirections(response); 
      } 
     }); 
     } 
     </script> 

回答

2

只需使用: -

object results= wbNavigator.InvokeScript("calculer", "3.072526", "36.766942", "3.042526", "36.766942"); 

注意导航后立即这样做可能没有预期的效果。您也许应该将此代码移动到WebBrowserLoadCompleted事件中。

+0

thx为您的答案!我试图做到这一点!但它始终是相同的问题也许是我的JavaScript代码有问题: – 2012-02-10 13:47:53

+0

@Mehdi:评论不是一个很好的地方,对于如此多的文本和特殊的代码,根本没有格式的评论。使用您问题下的编辑功能,并在您的问题中添加其他信息。 – AnthonyWJones 2012-02-10 13:52:27

+0

完成!编辑完成thx安东尼。 – 2012-02-10 13:59:53

相关问题