2017-09-01 3 views
0

Ich benutze niceSelect für eine benutzerdefinierte Auswahlbox. Aus irgendeinem Grund wird die Auswahlbox nicht geschlossen, wenn eine Option ausgewählt ist. Ich habe einen benutzerdefinierten Code die offene Klasse vom selectbox Element zu entfernen, aber es funktioniert nicht ...Auswahlliste schließt nicht bei Klick

var ns = $('.nice-select.open'); 
var ns_option = $('.nice-select.open li'); 

ns_option.on("click", function() { 
    ns.removeClass("open"); 
}); 

Einsicht wäre sehr

Antwort

1

Versuchen Sie dies klar sein:

var ns = $('.nice-select .open'); 
var ns_option = $('.nice-select .open li'); 

ns_option.on("click", function() { 
    ns.removeClass("open"); 
}); 

Mit jQuery Wenn Sie eine Klasse innerhalb einer Elternklasse auswählen, müssen Sie zwischen den einzelnen Klassennamen ein Leerzeichen einfügen, anstatt ".nice-select.open li" sollte es ".nice-select .open li" wie im obigen Code sein.

Hoffe, das hilft!

+0

Schätzen Sie es, aber die offene Klasse und nice-select sind beide auf dem gleichen Element; nicht Eltern/Kind – pjldesign

0

Problem war, dass es versuchte, die Klasse zu entfernen, wie es von NiceSelect hinzugefügt wurde. Dies funktioniert:

$('.nice-select ul li').click(function() { 
     setTimeout(function() { 
      $('.nice-select').removeClass("open"); 
     }, 10); 
    }); 
Verwandte Themen