0

OpenLayers レイヤー スイッチャー コントロールの新しいスタイルにブートストラップ テーマを実装しようとしています。ブートストラップの例では、 input要素が次のようにlabel要素内にネストされ
ていることに気付きました。

<label class="radio span2">
    <input type="radio" value="option1">
    Cash
</label>
<label class="radio span2">
    <input type="radio" value="option2">
    Invoice
</label>
<label class="radio span2">
    <input type="radio" value="option3">
    Discover
</label>

ラジオボタンのラベルをクリックすると、チェックされますがトリガーされないようです。ただし、ラジオ自体をクリックすると、トリガーされます。チェックボックスでも同じことが起こります。しかし、チェックボックスがチェックされていても、今回はクリックイベントはトリガーされません。

ここでコードを確認できます

どうすればこれを解決できますか?

4

1 に答える 1

2

clickコントロールのイベント ハンドラーを登録しました。コントロールをクリックしないと、ハンドラーは呼び出されません。

ラベルが要素に関連付けられている場合、ラベルをクリックすると要素が「アクティブ化」されます。チェックボックスまたはラジオボタンの場合、これはチェック/チェックしたことを意味します。

チェックボックスは、キーボードなどの他の方法でも変更できます。したがって、clickイベント ハンドラーは最適な選択ではありません。change代わりにイベントを使用してください。

于 2013-07-04T14:51:57.503 に答える