click
HTMLoption
要素のイベントを機能させるのに問題があります。
単純なものでも機能しconsole.log('hello!');
ません。
私はこれで試しています:
$('#mySelect option').bind('click', function(){
console.log('hi!');
});
しばらくは動作しましたが、その後停止しました。
click
HTMLoption
要素のイベントを機能させるのに問題があります。
単純なものでも機能しconsole.log('hello!');
ません。
私はこれで試しています:
$('#mySelect option').bind('click', function(){
console.log('hi!');
});
しばらくは動作しましたが、その後停止しました。
私の場合、次のコードが機能します
$('#myItem').change(function(){
//do somthing
})
idを指定してを使用.on()
してバインドできます。<select>
一般的に、change
は呼び出されるイベント<select>
です。
option
したがって、イベントをバインドするときに言及する必要はありません。
$(document).on('change','#mySelect', function(){<br>
console.log('hi!');
});
また
$('#mySelect').bind('change',function(){<br>
console.log('hi!');
});
これにより、ケースが解決されます-私のニーズに合わせて(ページの選択要素の一部がクリックされたときにイベントをキャッチするため)。タッチ動作を検証していませんが、Firefox、Chromeはこれで問題ないようです
$('.class_for_select').focus(function() {
// do something here
});
サンプル例は、クリックまたは選択の変更時にオプションのドロップダウン値と色を変更する方法を示しています
HTML:
<select name="options">
<option value="1">Red</option>
<option value="2" selected="1">Green</option>
<option value="3">Blue</option>
</select>
jQuery:
$("select").on("click", function () {
debugger;
var sVal = $(this).val();
$(this).css("background-color", "red");
$(this).find("option").css("background", "white");
$(this).find('option:selected').css("background-color", "red");
$("input").val($(this).val());
});
このjsフィドルを確認してください-
HTML
<select id="mySelect">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
JQUERY
$('#mySelect').bind('click', function(){
alert('hi!');
});
Click
からに変更Change
.bind()の代わりに.on()を使用することをお勧めします。
$('#mySelect').on('change', function(){
var $this = $(this),
$value = $this.val();
alert($value);
});
変更が私にとって十分ではなく、オプションをクリックする方法が見つからなかったためです。
$('#mySelect').click(function () {
if ($(this).attr('optionclick') == '1') {
$(this).attr('optionclick', '0');
}
else {
$(this).attr('optionclick', '1');
}
});