0

特定の基準に基づいて Google マップ上にマーカーを生成するコードがあります。私がやろうとしているのは、リストに表示される各マーカーに関連付けられたアドレスと、各アドレスの横にあるチェックボックスを含むマップの横にリストを生成することです。このリストの一番下には、チェックボックスが選択されている結果のみを返す「絞り込み」ボタンがあります。

私の質問は次のとおりです。

  1. 動的に生成されたチェックボックスとそれぞれのアドレス フィールドを保存して、絞り込みボタンで選択を更新および変更できるようにするにはどうすればよいですか?

  2. 各チェックボックスを実際に設定して、onClickでマップからマーカーを削除する関数を実行するにはどうすればよいですか?

4

1 に答える 1

1

特定のdiv内にその場でチェックボックスを作成する

var holder = document.getElementById('holdingDiv');
var newCheckbox = document.createElement('input');
newCheckbox.type = 'checkbox';
newCheckbox.id = 'holdingDiv_option' + someValueIdentifier;
holder.appendChild(newCheckbox);

イベントハンドラーを追加してこれらのチェックボックスを実行するには:

// modify this if not just a bunch of checkboxes in a div:
var checkboxes = holder.getElementsByTagName('input'); 
for(var i=0; i < checkboxes.length; ++i) {
    var thisCheckBoxId = checkboxes[i].id;
    // create a listener
    var callback = function(event) {
        myGeneralHandler(i, event);
    }
    if(checkboxes[i].addEventListener) {
      checkboxes[i].addEventListener('click', callback, false);
    } else { //IE
      checkboxes[i].attachEvent('click', callback);
    }
}

myGeneralHandler次に、任意のチェックボックスからのクリックを処理するように設定します。

于 2012-10-17T09:07:06.677 に答える