2012-09-28 16 views
7

में डॉट अक्षम किया गया है, मुझे पता है कि जारी किए गए सुझावों के बारे में कई प्रश्न पहले से ही जवाब दिए गए हैं, लेकिन दिए गए समाधानों में से कोई भी मेरे लिए काम नहीं करता है।इनपुट प्रकार = संख्या कीबोर्ड में गैलेक्सी टैब

मैं सैमसंग गैलेक्सी टैब का उपयोग कर रहे एक उद्यम के लिए एक वेब विकसित कर रहा हूं। बहुत सारे इनपुट हैं जो सामग्री दशमलव संख्या हैं। तो मैंने <input type="number" /> के साथ प्रयास किया। लेकिन नेविगेटर डॉट और कॉमा अक्षम के साथ एक कीबोर्ड प्रदर्शित करता है। न केवल यह, लेकिन ऑनफोकस, डॉट या अल्पविराम विभाजक मूल्य से हटा दिए जाते हैं।

मैंने पहले से ही "0,1", "0,01", "0.1", "0.01", "any", आदि जैसे एक चरण को सेट करने का प्रयास किया है, जो कि न्यूनतम, अधिकतम, पैटर्न को रेगेक्स के साथ प्रयोग करता है जो दशमलव से मेल खाता है संख्याएं ... कोशिश करने के लिए स्टैक ओवरफ्लो में कोई सलाह नहीं है, और यह भयानक हाहा है।

मैं डिफ़ॉल्ट ब्राउज़र के साथ सैमसंग गैलेक्सी टैब 10.1 का उपयोग कर रहा हूं, लेकिन मुझे इसके HTML5 कार्यान्वयन की किसी भी सीमा के बारे में बात करने वाला कोई दस्तावेज़ नहीं मिला है। तो आजकल मुझे नहीं पता कि मुझे कुछ याद आ रहा है, अगर कुछ ऐसा है जो मैं कोशिश कर सकता हूं, या अगर कुछ जानता है कि गैलेक्सी टैब की गलती है तो मैं इसके लिए कुछ भी नहीं कर सकता।

अग्रिम धन्यवाद।

+0

आप टेबलेट पर Chrome स्थापित करने और इसे का उपयोग आदानों का परीक्षण करने की कोशिश की है? क्रोम इंस्टॉल करना और इसे डिफ़ॉल्ट ब्राउज़र बनाना पहली बात है जो मैंने अपने गैलेक्सी टैब 3 10.1 टैबलेट पर किया था। –

+0

मुझे पता है कि लक्ष्य टीम के लिए एक कठिन आवश्यकता होगी, हम "आईई का उपयोग बंद करना" के बारे में बात नहीं कर रहे हैं, लेकिन "आपके पास एक लीड उत्पाद है लेकिन आपको डिफ़ॉल्ट ब्राउज़र का उपयोग करके एवोई भी करना चाहिए"। वैसे भी सलाह के लिए धन्यवाद। हम अंत में एक साधारण कस्टम एचटीएमएल संख्यात्मक कीबोर्ड विकसित करना समाप्त कर दिया। –

+1

सैमसंग गैलेक्सी एस 3 पर एक समस्या के रूप में इसे देखें। एओएसपी ब्राउज़र या क्रोम की बजाय 'सैमसंग कीबोर्ड' ऐप के साथ एक समस्या प्रतीत होती है। – contrebis

उत्तर

2

HTML5 specification for input with a type of number बताता है कि valid floating point number के रूप में पार्स किए जाने वाले किसी स्ट्रिंग को अनुमति दी जानी चाहिए। इसमें विशेष रूप से . के साथ-साथ -, + और e शामिल हैं।

तो सैमसंग गैलेक्सी टैब 10.1 पर कार्यान्वयन अमान्य है।

यदि आपको इस डिवाइस का समर्थन करने की आवश्यकता है, तो आपको type="text" का उपयोग करना होगा और स्ट्रिंग को सत्यापित करना होगा। यह सॉफ़्टवेयर कीबोर्ड वाले डिवाइस पर सही कीबोर्ड को स्वतः पॉप नहीं करेगा।

<input type="text" pattern="^-?(?:[0-9]+|[0-9]*\.[0-9]+)$" name="NumberInput"> 
+0

क्या आप एंड्रॉइड स्टॉक ब्राउज़र पर '<इनपुट प्रकार =" संख्या "/>' के कार्यान्वयन का मतलब अमान्य है? –

+0

या सॉफ्ट कीबोर्ड? –

+0

@ मिथुन, यही वह है जिसे मैं विश्वास नहीं कर सकता, या तो सैमसंग गैलेक्सी टैब के मूल ब्राउज़र के लिए html5 इनपुट प्रकार = संख्या छोटी है, या मुलायम कीबोर्ड फ्लोटिंग पॉइंट नंबरों पर डैप्टेड है, जहां कोई भी बात नहीं कर रहा है उसके बारे में। –

4

एंड्रॉयड नाम स्थान में आप उपयोग कर सकते हैं:

android:inputType="numberDecimal" 

जो तुम इनपुट करने के लिए सक्षम बनाता है। ""

+0

क्षमा करें, क्या आप वेब विकास के एंड्रॉइड ऐप्स के बारे में बात कर रहे हैं? –

+0

मैं एंड्रॉइड के लिए एक्सएमएल के बारे में बात कर रहा हूं। मैं देखता हूं कि आप HTML5 कर रहे हैं, लेकिन मुझे लगता है कि इनपुट प्रकार समान हैं। दशमलव एक आम आवश्यकता होगी, इसलिए मुझे विश्वास नहीं है कि सैमसंग कार्यान्वयन अमान्य है – CocoNess

+0

ब्राउज़र में सैमसंग सॉफ्ट कीबोर्ड वास्तव में अमान्य है। – oldwizard

4

आप अपने वेब दृश्य वर्ग का विस्तार करने और इस तरह अपनी वस्तु उपयोग करने की आवश्यकता

public class WebViewExtended extends WebView{ 

    public WebViewExtended(Context context) { 
     super(context); 
    } 

    public WebViewExtended(Context context, AttributeSet attrs) { 
     super(context, attrs);  
    } 

    public WebViewExtended(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    @Override 
    public InputConnection onCreateInputConnection(EditorInfo outAttrs) { 
     InputConnection connection = super.onCreateInputConnection(outAttrs); 
     if ((outAttrs.inputType & InputType.TYPE_CLASS_NUMBER) == InputType.TYPE_CLASS_NUMBER) 
     { 
      outAttrs.inputType |= InputType.TYPE_NUMBER_FLAG_DECIMAL; 
     } 

     return connection; 
    } 

} 
+0

प्रश्न एचटीएमएल 5 > मैं सैमसंग गैलेक्सी टैब का उपयोग कर रहे एक उद्यम के लिए एक वेब विकसित कर रहा हूं। बहुत सारे इनपुट हैं जो सामग्री दशमलव संख्या हैं। तो मैंने <इनपुट प्रकार = "संख्या" /> –

+0

@ एक्सेल कॉस्टसपेना के साथ प्रयास किया है इस प्रकार आप को संख्यात्मक कीपैड में एक डॉट प्राप्त करने जा रहे हैं। जैसा कि एंड्रॉइड नवीनतम संस्करणों में डिफ़ॉल्ट रूप से वेबव्यू में नहीं है। परिवर्तन बैक एंड (एंड्रॉइड साइड) –

+0

पर किए जाने वाले बदलावों को हमारे दिन सहेजे गए हैं। धन्यवाद। –

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