1

私はhttps://developers.google.com/maps/documentation/javascript/directionsに従っ ていますが、マップは特定のポイント間の距離を計算しますが、異なる値を受け取り、それらの値に基づいて距離を計算する必要があります.次のように選択タグを実行しますが、自動的に実行する必要があるため、ユーザーがページを開いたときに値を関数に送信して距離を計算する必要があります。(calcRoute 関数に値を渡そうとしましたが、うまくいきません)

もう 1 つの問題は、(ウェイポイント部分の) リストを関数に渡すにはどうすればよいかということです。

  function calcRoute() {
            var travel = document.getElementById("mode").value;   << currently it is done manually
            var origin = document.getElementById("origin").value; << manually
    var request = {
      origin: origin,
      destination: '238 Elizabeth St,Los Angeles, CA',
      waypoints:[{location: "George Street,Los Angeles,CA"}],
      travelMode: travel
    };
    directionsService.route(request, function(response, status) {
      if (status == google.maps.DirectionsStatus.OK) {
        directionsDisplay.setDirections(response);
      }
    });
  }
4

1 に答える 1

0

calcRoute 関数の定義を以下のように変更してみてください。

function calcRoute(){
  var travel = document.getElementById("mode").value; 
  var origin = document.getElementById("origin").value;

function calcRoute(x,y){
  if(x && y){
    // your code to process your parameter values
    var travel = x
    var origin = y
  }else{
    // your code to process, if no parameters given (for default functionality)
    var travel = document.getElementById("mode").value;   << currently
    var origin = document.getElementById("origin").value; << manually
  }

異なる値を渡したい場合は、パラメータを指定してcalcRoute関数を呼び出してみてください

それが役に立てば幸い :)

于 2012-09-22T07:01:21.093 に答える