2012-06-22 21 views
5

search input ve submit button ile bir form temel bir temel var. Odak noktası input'da gerçekleştiğinde, klavye beklendiği gibi görüntülenir. button'a bastığımda, form gönderme olayı gerçekleşir, burada ben event.preventDefault()'u arayın ve bir ajax çağrısı yapın. Ancak, klavyede arama düğmesine bastığımda, klavye gizlenir ve gönderme olayı olmaz.Mobile Safari Klavye Formu Gönderme

Klavyede arama yaptığımda form neden vermiyor? Bu olayı klavye arama tuşuyla gerçekleşmesi için nasıl tetikleyebilirim?

Teşekkürler.

+0

kodu gönderebilir miyim dışındaki tüm aramaları dönmek? Bir etkinliği dinlemene gerek yok. –

+0

Aslında ajax ' – Trevor

+0

Oh gotcha kullanmak istiyorsanız bir olayı dinlemeniz gerekiyor, normalde ajax yoluyla veri göndermek için form gönder kullanın. form verilerini json'a serileştirebilir ve doğrudan gönderebilirsiniz. Her girdiyi doğrudan bir modele bağlamaktan çok daha kolaydır. –

cevap

5

Klavye arama düğmesi bir tuşa basma olayına bağlı olmalı ve keycode13'a sahip olmalıdır.

Temelde, keypress olayları dinlemek ve e.which === 13

$('input').on('keypress', function (e) { 
    if (e.which !== 13) { 
     return; 
    } 

    // ajax code 
} 
İlgili konular