3

正常に動作する標準のグーグルプレイスオートコンプリートコードがいくつかあります。ユーザーがリストからアドレスを選択したときの結果を変更したい。

たとえば、結果の1つは次のとおりです。

'45 Alexandra Road Holiday Flats、Alexandra Road、Southport、United Kingdom'

ユーザーがリストから選択すると、次の値がテキストボックスに表示されます。

'45 Alexandra Road Holiday Flats、Alexandra Road、Southport、PR4 5JD '

つまり、郵便番号を挿入し、英国を削除したいのです。

これはplace_changedイベントで実行でき、post / zipコードが利用可能であり、文字列操作を実行して、必要な結果を得ることができます。

ただし、「place_changed」関数の最後にあるtxtBoxに割り当てると、何かが郵便番号なしで元の選択された値に戻します。これは、私のコードが機能していたため、最近変更されたものです。txtBoxへの値の割り当て/バインドは、place_changedイベントの後に発生します。

var autoCompleteObject = new google.maps.places.Autocomplete(txtBox[0], GooglePlacesOptions);
// Autocomplete Listener
google.maps.event.addListener(autoCompleteObject, 'place_changed', function () {

    var place = autoCompleteObject.getPlace();

    txtBox.val('45 Alexandra Road Holiday Flats, Alexandra Road, Southport, PR4 5JD');

});

これを達成する方法についてのアイデアは大歓迎です。

どうもありがとう、

マーク

4

2 に答える 2

0

参考までに、次の回答が効果的な回避策として役立つことがわかりました: show just the street address in google.maps.event.addListener()

于 2012-12-31T07:27:09.263 に答える
0

AutoComplete 機能を使用せず、代わりに PlacesService.textSearch() を使用することにしました。

非常に簡単で、結果やその表示方法などをより詳細に制御できます.

質問はまだ残っていますが、私の頭はあまり痛くありません:)

于 2012-12-04T14:27:24.877 に答える