2016-04-08 30 views
1
ben isteyen kulüpler Ne

: bir form gönderildiğinde
bir "Sipariş İşleme" öğesini gösterir.Eleman iOS form gönderme gösterilmiyor

Yaptıklarımı:

$("#register").validate({ 
    errorPlacement: function(error, element) { }, 
    submitHandler: function(form) { 
    $('.processing-wrapper').removeClass('hidden'); 
    form.submit(); 
    } 
}); 

ben yaşıyorum Ne: masaüstü şeyler üzerinde

denedim Ne:

  • Ben form.submit dışarı yorumladı(); Sadece "Sipariş İşleme" öğesinin iOS'ta görünüp görünmeyeceğini görmek için yaptı. Ancak form gönderildiğinde, işleme elemanını asla göremiyorum.
  • "Sipariş İşleme" öğesinin iOS'ta gösterilmesi için daha fazla zaman verilip verilmeyeceğini görmek için form gönderimini geciktirmek üzere setTimeout eklemeyi denedim, ancak formu gerçekten göndermede sorun yaşadı.

bu güncellemeyle zaman aşımı

$("#register").validate({ 
    errorPlacement: function(error, element) { }, 
    submitHandler: function(form) { 
    $('.processing-wrapper').removeClass('hidden'); 
    setTimeout(function(form) { 
     form.submit(); 
    }, 2500); 
    } 
}); 

ile güncellendi ben "Sipariş İşleme" öğesine bakın ama aynı zamanda hata "TypeError: tanımsız bir 'to' özelliği okunamıyor" olsun

Özeti:

  • herhangi bir fikir neden th e "Sipariş İşleme" öğesi iOS'ta görünmüyor mu?
  • setTimeout'un gerçekten işe yaramasıyla ilgili herhangi bir öneriniz var mı?

Doğru yönde bana işaret etmenin herhangi bir yardımı büyük ölçüde takdir edilecektir!

cevap

1

zaman aşımı yöntemi olan form parametreyi kabul etmek anonim işlevini belirtmiş olduğunuz için ancak hata alıyorsanız, doğru bir düzeltmedir aşırı sürme dolayısıyla dış kapsam form ve null, hata. Sadece bu parametreyi kaldırmak ve sorun çıkmaması gerekir: zamanlayıcı gecikme çok daha kısa olabilir

$("#register").validate({ 
    errorPlacement: function(error, element) { }, 
    submitHandler: function(form) { 
     $('.processing-wrapper').removeClass('hidden'); 
     setTimeout(function() { // no parameter here 
      form.submit(); 
     }, 50); 
    } 
}); 

Not, benim örnekte 50ms indirdi. Tek yapmanız gereken, dersi kaldırma çağrısının, gönderim gerçekleşmeden önce yapıldığından, UI'nin güncelleme şansı verdiğinden emin olmanız gerekir.

+0

Bu çok yararlı, teşekkürler! Netleştirmek gerekirse, iOS, sınıfı kaldıramaz ve aynı zamanda formu gönderemez mi? IOS, gönderildikten sonra kullanıcı arayüzünü donduruyor mu? – michaelespinosa

+1

UI bu şekilde donmuyor, ancak yeni bir sayfa yükleme isteği yürütüldüğünde geçerli sayfaya yapılan çağrılara yanıt vermiyor. –