2012-06-22 15 views
5

मेरे पास एक search input और submit button के साथ एक मूलभूत form है। जब input में फोकस होता है, तो कीबोर्ड अपेक्षित के रूप में प्रदर्शित होता है। जब मैं button दबाता हूं, तो फ़ॉर्म सबमिट होता है, जिसमें मैं event.preventDefault() पर कॉल करता हूं और इसके बजाय एक AJAX कॉल करता हूं। हालांकि, जब मैं कीबोर्ड पर खोज बटन दबाता हूं, तो कीबोर्ड बस छुपाता है और कोई सबमिट ईवेंट नहीं होता है।मोबाइल सफारी कीबोर्ड फॉर्म सबमिशन

जब मैं कीबोर्ड पर खोज दबाता हूं तो फ़ॉर्म सबमिट क्यों नहीं करता है? कुंजीपटल खोज बटन के माध्यम से मैं इस घटना को कैसे ट्रिगर कर सकता हूं?

धन्यवाद।

+0

आप कोड पोस्ट कर सकते हैं के अलावा सभी कॉल वापसी? आपको किसी ईवेंट को सुनने की आवश्यकता नहीं है। –

+0

असल में आपको किसी ईवेंट को सुनने की आवश्यकता है यदि आप 'AJAX' – Trevor

+0

ओह गॉचा का उपयोग करना चाहते हैं, तो मैं आमतौर पर AJAX के माध्यम से अपना डेटा सबमिट करने के लिए सबमिट फॉर्म का उपयोग करता हूं। आप फॉर्म डेटा को जेसन में क्रमबद्ध कर सकते हैं और उसे सीधे भेज सकते हैं। प्रत्येक इनपुट को सीधे मॉडल में तार करने से कहीं अधिक आसान है। –

उत्तर

5

कीबोर्ड खोज बटन को एक कीप्रेस ईवेंट से बाध्य होना चाहिए और के keycode है।

असल में, keypress घटनाओं को सुनने और e.which === 13

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

    // ajax code 
} 
संबंधित मुद्दे