var start = new google.maps.places.Autocomplete(
(document.getElementById('start')), {
types: ['geocode']
});
<input id="start" placeholder="Where to begin?" type="text" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=places"></script>
私はGoogleがテキストフィールドでの作業オートコンプリートを置く得ることができますに新しく生成された入力にオートコンプリートを追加します。
これらのフィールドをliとして生成し、各フィールドにオートコンプリートを含むようにします。ここでは、オートコンプリートの作業なし例です。
document.getElementById('addplace').addEventListener('click', function() {
addplace();
});
var j=1;
function addplace() {
var node = document.createElement("li");
node.innerHTML = "<input id='place" + j +"' placeholder='Pit stop " + j + "' onFocus='geolocate()' type='text' />";
document.getElementById("waypoints").appendChild(node);
j++;
}
<input type="submit" id="addplace" value="Add One!">
<ul id="waypoints"></ul>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=places"></script>
ので、生成された入力のidのはplace1、place2など
ある私はに
var place"+j+" = new google.maps.places.Autocomplete(
(document.getElementById('place"+j+"')), {
types: ['geocode']
});
を追加してみましたaddplace関数の定義は、私のjavascriptを無効にするように思われました(マップはもはや表示されなくなりました)。理由は分かりません。私はGoogleがそれをブロックしているとは思わない。たぶん私は構文エラーまたは場所を作成している "+ j +"変数の名前を変更する正しい方法ではない?
生成された各入力フィールドに自動的に場所の自動補完機能を追加していただきありがとうございます。
UPDATE:私はこの質問Google Places Autocomplete doesn't work on dynamically generated input elements に気づき、それを試してみて、ここで適用するために勉強しますが、私はその一例では必要以上に複雑であるかもしれないAJAXや他のものを使用することに注意してください。換言すれば、彼らは回答でhttp://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.jsを参照する。もし私が私の部分的な解決策が少なくとも近づいている/いくつかの微調整で正しいかもしれないことを私は分かっているので、私はjqueryがなくてもいいかもしれません。
さてさて、jQueryのことがあります。感謝万円。 @ divy3993 – javaandy
ああああ... ** JQuery **。それがあなたを助けてくれてうれしいです。 – divy3993
私はそれが私のアプリケーションでそれを統合する問題を抱えているフィールドを追加するために働いていますが。あなたが助けることができる場合に備えて、感謝の意を表する。 http://stackoverflow.com/questions/36551140/newly-generated-ul-li-input-values-not-getting-pushed-into-array-not-working-w – javaandy