-1

Google Maps API、Google Places API、オートコンプリートを使用しており、2か所の場所に配置し、地図との運賃。Google Maps APIは一部の場所では間違った場所を示していますが、他の場所では正しく表示されています

一般的に、これはうまくいき、正確な位置を計算していますが、いくつかの場所に気付きました。オートコンプリートはテキストボックスにアドレスを表示しますが、ジオコードされてマップに追加されると、私が仮定できるのは、動作しない他のアドレスのためにこのアドレスに行くように見えるので、セルタワーの位置だけです)。

動作しない場所は遠い場所にあり、遠くにある郵便番号があります。そのため、Googleが地図上で正確にその場所を特定できないことがありますか?したがって、私はちょうどそれがすべての場所入力とエラーメッセージを追加するために動作しないことを受け入れる必要がありますか?問題は、場所はGoogleマップのウェブサイトで利用可能ですが、ちょうどAPIでボールをプレイしていないということです。

提案がありますか?

+2

は、あなたがこれを実証する例のクエリを表示することができます:

は、場所IDとオートコンプリートを実装する方法の例を見てください? – stuartd

+0

グラスゴー空港〜キャメロンハウスロッホローモンド、アレクサンドリア、ウェストダンバートンシャーG83 8QZ 私がここで働いているウェブサイトを見つける(http://www.citycarsprivatehire.com/get-a-quote/) – icabob91

答えて

2

問題は、あなたのコード内の次の行にあります。

var start = document.getElementById("start").value + ', glasgow';

var end = document.getElementById("end").value + ', glasgow';

あなたはオートコンプリートで表示されているアドレスに「グラスゴー」を追加します。

ルートを計算するときにアドレステキストの代わりにオートコンプリートボックスから直接取得したplaceIdを使用することをおすすめします。プレースIDを使用すると、ユーザーが選択したプレースの正確なルートが計算されます。現在、テキストを追加してこれをルートサービスに渡すと、実際に間違った結果が生じることがあります。

http://jsbin.com/ponoyod/4/edit?html,output

+0

完璧で優れた例 – icabob91

関連する問題