2012-03-28 15 views
1

Ich habe Capture-Change-Ereignis auf Drop-Down-Auswahl. Dieses Drop-Down-Feld wird mit AJAX erstellt, sodass die Ereigniserfassung mit Live oder Bind erfolgen muss. Hier füge ich den Code hinzu, den ich gerade benutze. Dies funktioniert auf Feuer Fuchs. Auf IE7 funktioniert es nicht. Kann mir jemand einen Weg, sagen Live-Event von Tropfen zu erfassen wählen unten auf IE7jQuery: Live-Change-Ereignis auf IE7

 

    <select id="lob_drop" name="opt" class="select"> 
     <option value="1">option 1</option> 
     <option value="2">option 2</option> 
     <option value="3">option 3</option> 
    </select> 

    jQuery('#lob_drop').live('change',function(){ 
     alert(jQuery('#lob_drop option:selected').val()); 
    }); 

Antwort

1

Verwendung jquery .on(). .live() ist deprecated.

jQuery(document).on('change', '#lob_drop', function(){ 
     alert(jQuery('#lob_drop option:selected').val()); 
    } 
); 

Demo

+0

Es funktioniert gut. Vielen Dank. – sugunan

0

Verwenden Sie die folgenden Schritte aus:

$('body').on('change', '#lob_drop', function(){ 
    alert($(this).val()); 
}); 

Hier ist eine Geige mit einem Beispiel: http://jsfiddle.net/7EcGE/24/

Mein bisheriger Vorschlag unten nicht da .live arbeiten ist veraltet eine entfernt, da jQuery 1.9:

jQuery('#lob_drop').live('change',function(){ 
    alert(jQuery(this).val()); 
}); 
+0

"live" hat nicht funktioniert. aber "an" funktioniert. – sugunan

+0

@sugunan Danke, dass du das gezeigt hast. Ich habe meine Antwort aktualisiert. –

1

Was ist Ihre JQuery-Version?

Es funktioniert für mich auf IE7 mit JQuery 1.4+ Es scheint Live() würde nicht mit Änderung Ereignis in IE in allen früheren Versionen arbeiten.