Ich habe ein Formular mit ein paar Selects innerhalb. ich das select2 jQuery-Plugin über diesen wählt wie diese Anwendung:Dynamisches select2 nicht feuern change Ereignis
$("select.company_select, select.positions_select").select2();
Die ausgewählten Arbeiten in Ordnung, aber ich habe diesen Code meine Form autosubmit (Ich habe das autosubmit Klasse auf dem Formular-Tag).
var currentData;
$('.autosubmit input, .autosubmit select, .autosubmit textarea').live('focus', function() {
currentData = $(this).val();
});
$('.autosubmit input, .autosubmit select, .autosubmit textarea').live('change', function() {
console.log('autosubmiting...');
var $this = $(this);
if (!currentData || currentData != $this.val()) {
$($this.get(0).form).ajaxSubmit(function (response, status, xhr, $form) {
currentData = "";
});
}
});
Die Sache ist, dass mit der Auswahl2, die Änderung oder das Fokusereignis überhaupt nicht ausgelöst wird. Wenn ich select2 entferne, werden die Ereignisse perfekt ausgelöst.
Was mache ich falsch?
das gleiche Problem heute Abend hatte. das hat fast für mich funktioniert. Mit jQuery 1.11.1 und einer Textfeldversion von select2 musste ich die längere Form von $ ('. container') verwenden. on ('change', '# myselect2', function() {... – xeo
Docs [http : //select2.github.io/select2/] (http://select2.github.io/select2/) –
Diese Geige scheint nicht mehr zu funktionieren. Ich sehe "Uncaught TypeError: $ (...). select2 ist keine Funktion "in der Konsole, obwohl select2.js in den externen Ressourcen enthalten ist. Möglicherweise ein Problem mit jsfiddle? – jeconner