2014-06-25 5 views
8

को रोकने के लिए बटन पर क्लिक करके इनपुट फ़ील्ड में उपयोगकर्ता परिभाषित स्थान जोड़ें मेरी आवश्यकता एक टेक्स्ट फ़ील्ड में किसी स्थान का नाम डालना है और मानचित्र में दिखाएं, इसलिए मैंने geocomplete js का उपयोग किया, जो अच्छी तरह से काम करता है।geocomplete

अब मेरे उपयोगकर्ता को 'मेरा घर' जैसे उपयोगकर्ता परिभाषित स्थानों में डालने में सक्षम होना चाहिए, इसके लिए मुझे मानचित्र के शीर्ष पर 'x' बटन पर क्लिक करने के लिए भूगर्भ को हटाने की आवश्यकता है।

मैं इसे कैसे कार्यान्वित कर सकता हूं?

अग्रिम

+1

कृपया समस्या को हल करने का प्रयास करें। – r3wt

+1

हां मैंने कई विकल्पों की कोशिश की। अब मैं प्लगइन को अनुकूलित करने जा रहा हूँ। एक बार किया जाएगा अद्यतन। धन्यवाद – Adidev

+1

यह भावना है! मैं आशा करता था कि आप कुछ कोड प्रदान करें, मैं शायद मदद करने में सक्षम हूं, लेकिन महत्वपूर्ण बात यह है कि आप इसे काम कर रहे हैं। आशा है कि आप करते हैं। – r3wt

उत्तर

1

धन्यवाद मैं पैकेज को अनुकूलित नहीं होता! जब कोई नया संस्करण आता है, तो आपको पहले भी वही परिवर्तन करना होगा।

चूंकि आपने कोई कोड प्रदान नहीं किया है, इसलिए मैं आपको JQuery सत्यापन विधि ओवरराइड के साथ किए गए कार्यों के बारे में एक विचार दे सकता हूं।

आप बस फिर उस geocomplete के बाद शामिल किया गया है एक फ़ाइल में इसे ओवरराइड, geocomplete.js फ़ाइल में श्रोता ($('#listenToThis').on('click', function(){ doThings(); } की तरह कुछ) को खोजने के लिए होगा।

यदि आप बंडलों का उपयोग कर रहे हैं, तो geocomplete श्रोता प्रतिक्रिया के बाद बस अपनी फ़ाइल शामिल करें।

$.validator.methods.number = function (value, element) { 
    value = floatValue(value); 
    return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:[\s\.,]\d{3})+)(?:[\.,]\d+)?$/.test(value); 
} 

समारोह ऊपर मेरे क्लाइंट साइड संख्या कि JQuery ($) मुद्रा के रूप में स्वरूपित किया गया मान्य करने के लिए अनुमति दी:

तो, आप उन को खोजने के बाद, आप निम्न जैसा कुछ कर सकते हैं।

यह JQuery.validator.methods.number समारोह, इसलिए यदि आप geocomplete.addSomethingToMap या geocomplete.reactToClick समारोह इंगित कर सकते हैं (समारोह पैकेज कोड को बदलने बिना ओवरराइड करने के लिए एक धोखाधड़ी रास्ता) को ओवरराइड करता है, तो आप ओवरराइड करना चाहिए यह और यह अनिवार्य रूप से उस तरह से काम करेगा।

चेतावनी, हालांकि: आपको को को फिर से शामिल करने की आवश्यकता होगी जब आप सुविधा को पुन: सक्षम करना चाहते हैं। आपको फिर से ओवरराइड करना होगा, ओवरराइड करना होगा, फिर से ओवरराइड करना होगा। यह एक सबसे अच्छा तरीका नहीं हो सकता है अगर वे एक स्क्रीन पर सैकड़ों अलग-अलग नए स्थानों को जोड़ने जा रहे हैं, लेकिन एक दर्जन जैसे छोटे इकाई के लिए, यह एक अच्छा समाधान होना चाहिए।