0

Google プレイス オートコンプリートを使用しています

オートコンプリート テキスト ボックスで何かを検索すると、Google は html にいくつかの div を追加します。

<div class="pac-container" style="position: absolute; z-index: 1000; width: 134px; left: 885px; top: 412px; display: none;">
    <div class="pac-item remove">This is me </div>
  <div class="pac-item"><b>A</b>ustralia</div>
  <div class="pac-item"><b>A</b>bbas Town, Karachi, Sind, Pakistan</div>
  <div class="pac-item"><b>A</b>ustria</div>
  <div class="pac-item"><b>A</b>rgentina</div><div class="pac-item"><b>A</b>rizona</div></div>

これで、最初の子イオンpac-containerが他のイオンとは異なることがわかります。何らかの目的でその div を動的に追加しました。イベントをそのdivにバインドしたい場合、機能しません。

これが私がやっていることです

$('.remove').live('click', function () {
   console.log("working");
});

前もって感謝します 。 アップデート

皆さんは私を誤解していると思います。動的な div を 以外の場所に配置pac-containerすると動作しますが、div を配置pac-containerすると動作せず、ほとんどすべてのソリューションを試しましたが、誰も動作しません。
シナリオを理解していただければ幸いです。ありがとう

更新 2

これは私の作品をアップロードするリンクです

4

5 に答える 5

0

私はあなたのコードが正しく動作することを試しました.dom ready 関数でこのクリック関数を実行していると思います.dom ready で動的要素のクリック関数を試してみると、動作しないことを意味します..

jsfiddle http://jsfiddle.net/mNq5X/でコードを確認してください

   <div class="pac-container">
   <div class="pac-item remove">This is me </div>
   <div class="pac-item"><b>A</b>ustralia</div>
   <div class="pac-item"><b>A</b>bbas Town, Karachi, Sind, Pakistan</div>
   <div class="pac-item"><b>A</b>ustria</div>
   <div class="pac-item"><b>A</b>rgentina</div><div class="pac-item"><b>A</b>rizona</div>     
  </div>

js

$('.remove').live('click', function () {
  console.log("working");
});

したがって、あなたの解決策は、以下のdivを追加した後に上記のクリック機能を追加することです

          <div class="pac-item remove">This is me </div>
于 2013-05-27T08:36:43.393 に答える
0
$(document).on('click', '.remove', function () {
   console.log("working");
});
于 2013-05-27T08:27:27.383 に答える
0

div は動的に追加されるため、クリック イベント コードは div が追加された後に配置する必要があると思います。それ以外の場合、$('.remove') は「null」を返し、クリック イベントは機能しません。

于 2013-05-27T10:06:18.670 に答える
0
$(document).on('click','.remove', function () {
   //Your code
});

を使用してイベントを委任する必要があります.on。ちなみに.live時代遅れ。代わりに.onメソッドを使用してください。問題は、動的に追加された要素が、ページの読み込み時にイベントをバインドするために使用できないことです。そのため、エラーが発生します。イベントを特許にバインドしてみてください。これは、別の div であるか、問題ない可能性がありますdocument

続きを読む

直接対委任 - jQuery .on()

于 2013-05-27T08:29:57.530 に答える