2014-06-19 8 views
6

मैं आईओएस को लक्षित करने वाले कॉर्डोवा का उपयोग करके एक वेब ऐप बना रहा हूं। मेरे पास यह फॉर्मफॉर्म सबमिट करें बटन कुंजीपटल तब होता है जब कीबोर्ड ऊपर होता है IOS 7

<form id="formID"> 

    <div class="row"> 
    <input type="text" name="something1" placeholder="something1" class="form-control" required maxlength="26" /> 
    </div> 

    <div class="row"> 
    <input type="text" name="something2" placeholder="something2" class="form-control" pattern=".{6,6}" required /> 
    </div> 

    <div class="row"> 
    <input type="submit" value="Submit" class="button btn-primary" /> 
    </div> 

</form> 

मेरे जावास्क्रिप्ट में मेरे पास सबमिट ईवेंट के लिए श्रोता है।

मेरी समस्या यह है कि जब कीबोर्ड आईओएस में दिख रहा है, सबमिट बटन पर क्लिक करना हमेशा सबमिट ईवेंट को ट्रिगर नहीं करता है। सोमवार यह पहली बार 2 बार काम करता है लेकिन फिर काम करना बंद कर देता है। कोई भी जो इससे पहले चला गया है?

जैसा कि अब है, आपको कीबोर्ड पर "पूर्ण" क्लिक करना होगा (इसे गायब कर देना होगा) और फिर सबमिट बटन का उपयोग करें। या, कीबोर्ड के साथ सबमिट बटन पर क्लिक करें जो दिखा रहा है कि keybpoard छुपाएगा और फिर सबमिट सबमिट करें पर क्लिक करें।

कोई विचार?

संपादित

यह IOS 6 पर ठीक काम करता है, लेकिन iOS 7 पर सबमिट बटन पहले 2 क्लिक करने के बाद एक घटना को गति प्रदान नहीं करता है।

+0

मैंने इसी तरह के मुद्दों को देखा है, लेकिन आम तौर पर नियंत्रण पर क्लिक करके कीबोर्ड को खारिज करने का प्रयास करते समय आमतौर पर क्लिक या नल का जवाब नहीं देता है। एक और अच्छा परीक्षण यह देखना है कि आपका पृष्ठ मोबाइल सफारी का उपयोग करके उसी तरह प्रतिक्रिया करता है; इससे आपको अलग करने में मदद मिलेगी कि यह कॉर्डोवा के लिए विशिष्ट है, या UIWebkit के लिए अधिक सामान्य है। – Palpatim

उत्तर

5

इसलिए मैंने जिस समस्या का सामना किया था, मैंने हल किया। जैसा कि सवाल में बताया गया है, यह आईओएस 6 और एंड्रॉइड के लिए ठीक काम करता है। लेकिन ios7 के लिए मैंने देखा कि जब मैंने सबमिट बटन के ऊपर टेक्स्ट फ़ील्ड की ऊंचाई बढ़ा दी तो मुझे ऊपर वर्णित बग मिला। जब मैंने कोई गैर-डिफ़ॉल्ट स्टाइल नहीं जोड़ा जो सबमिट बटन के ऊपर तत्वों की ऊंचाई को प्रभावित करता है। अजीब सही

लेकिन फिर मैंने यह question पढ़ा।

तो सबमिट बटन होने की बजाय और सबमिट करने की घटना के लिए मेरी स्क्रिप्ट प्रतीक्षा करने के बजाय, मैंने बटन को एक लिंक में बदल दिया और टचेंड ईवेंट के लिए सुना। बम, यह एक आकर्षण की तरह काम किया।

$(document).on('touchend', 'form #button', function (e) { 
    $('#formID').submit(); 
}); 

तो मैं इस घटना बाईपास जाने और घटना प्रस्तुत करें ताकि बटन दबाकर रखें "जाओ" पर क्लिक अभी भी एक समारोह प्रस्तुत गति प्रदान को गति प्रदान।

+0

धन्यवाद आवंटित! मुझे कीबोर्ड के साथ एक बग ठीक करने में मदद मिली जो मैं पिछले 2 दिनों से काम कर रहा था !! – sputn1k

संबंधित मुद्दे

 संबंधित मुद्दे