2016-06-21 6 views
-1

Ich habe derzeit ein Suchfeld mit id="activityField" so, dass, wenn der Benutzer dieses Feld ändert, eine zugeordnete Tabelle aktualisiert. Soweit ich weiß, das ist ein Ergebnis einer jQuery keyup ist():Keyup Alternative für Dropdown-Boxen

$(document).on('keyup', '#tableFilter', function() { 
     window.location.hash = $(this).val() 
     $('.spotRow').first().click() 
    }) 

Allerdings habe ich eine Dropdown-Box mit HTML <select id="activityFilter"> und ich weiß nicht, wie die keyup zu duplizieren() Verhalten . Wenn ich eine Option in der Dropdown-Liste auswähle, ändert sich nichts sofort, aber wenn ich im Eingabefeld #tableFilter auf Leerzeichen klicke, wird die Tabelle wie erwartet aktualisiert.

Gibt es ein keyup() Äquivalent, das ich in diesem Dropdown-Menü verwenden kann?

+1

haben Sie versucht, '$ ('# activityFilter Option') auf ('Klick', function() {...});' – Jacques

+0

Kombination 'change' und' klicken. 'sollte es tun. – Blazemonger

+0

Dank @Jacques - Ihre Lösung hat für mich funktioniert! –

Antwort

1

sollten Sie

verwenden
$('#activityFilter option').on('click', function() { 
    window.location.hash = $(this).val(); 
    $('.spotRow').first().click(); 
}); 

Es kann auch nicht setzen Ihre keyup Zuhörer auf document eine gute Idee sein. Sie sollten alle Ihre Eingabefelder eine gemeinsame Klasse geben und auf diese Klasse hören.

IE:

$('.myCommonClass').on('keyup', function() { 
    window.location.hash = $(this).val(); 
    $('.spotRow').first().click(); 
});