2011-09-14 15 views
5

Bu IE7 hatası ile karşılaştın mı:IE7 hatası "giriş tipi = dosya" iki kez ateş değiştirir mi?

<input type="file" id="xxx"> 

<script> 
    $('#xxx').change(function(){ alert(1) }) 
</script> 

& girişinde bir dosya seçtiğimde, ilk kez uyarı kutusunu gösterir. Daha sonra vücuttaki boş alana tıklıyorum, uyarı kutusu bir kez daha gösterir. Bu, değişiklik olayını girişe bağladığımda bile olur: JQuery 1.6 ile dosya (en son şu anda).

Bunu en basit şekilde nasıl önleyebilirim? Tüm önerileriniz için teşekkürler!

+0

IE7'de ilk olayın dosya değiştiğini düşünüyorum, alanın odağı kaybettiğinde (onblur) ikinci olay gerçekleşiyor. –

+0

Kodun yalnızca bir kez yürütme sınırlaması için bir değişken önermekten nefret ediyorum. – f0x

cevap

6

ran sonra

+0

Çok teşekkürler! Keşke onlarca kez katılabilirdim. Sorunumu çözdüm. – SirDerpington

0

Sadece Bu benim "beyin fırtınası" bazı zor saatler sonra yapılan şey bu tetiği unbind ediyorum Dosya seç, olayı onunla bir kez "değiştir" olarak bağlarız. Böylece olay her zaman kullanıcı bir dosya seçmek istediğinde bir kez patlar.

Ve teşekkürler tanrı işe yarıyor! Hepinize teşekkür ederim.

+0

Ve ilk ziyaretten sonra sayfa ziyareti süresi için işlevi öldürmek? ;) – f0x

+0

Haklısınız, daha sonra, iki kez çağrılırsa, testin bir .blur() tetikleyicisine konması mümkün olabilir; IE, .change() komutuna iki yönerge gönderebilir.) Odak noktasını kaybettiğinizde – Narvath

İlgili konular