2012-02-09 9 views
6

के रूप में माना जाना चाहिए मेरे पास उन यूआरएल की एक सूची है जो हमारे उपयोगकर्ताओं ने विभिन्न ग्राहकों की वेबसाइटों के लिए प्रवेश किया है ... मैं इस सूची को सर्वर से ग्रिड में लोड कर रहा हूं देखने के लिए ... मैंने URL को एक HTML HTML टैग से लपेटकर क्लिक करने योग्य बना दिया ... समस्या यह है कि कभी-कभी उपयोगकर्ता http: // या www के बिना यूआरएल में प्रवेश करता है। उपसर्ग और इसलिए ब्राउज़र उन्हें सापेक्ष यूआरएल के रूप में मानता है जो कि कभी भी मामला नहीं है क्योंकि ये सभी वेबसाइटें हमारे ग्राहकों के लिए हैं और वे सभी बाहरी हैं। क्या इन यूआरएल को सापेक्ष के बजाय पूर्ण रूप से इलाज करने का कोई तरीका है?एचटीएमएल बल यूआरएल हाइपरलिंक को गैर-रिश्तेदार (पूर्ण)

<a target='_blank' href='google.com'>google.com</a> 

आप इस कोशिश करते हैं, तो आप देखेंगे कि ब्राउज़र यह एक रिश्तेदार पथ जो मामला नहीं होना चाहिए है मान लेंगे:

यहाँ एक उदाहरण है।

धन्यवाद


समाधान:

मैं '//' के लिए जाँच करने के लिए चुन लिया है (क्योंकि मैं नहीं जानता कि क्या प्रोटोकॉल है - हो सकता है http या https) और यदि नहीं पाया गया, मुझे लगता है कि यह एक http वेबसाइट है और मैं इसके साथ यूआरएल उपसर्ग करता हूं - इसलिए ब्राउज़र को हाइपरलिंक्स को पूर्ण

उत्तर

2

इनपुट के प्रीप्रोसेस क्यों नहीं करते हैं और आवश्यक होने पर http:// संलग्न क्यों नहीं करते हैं?

+0

मैं कर सकता था ... लेकिन कई यूआरएल हैंडल करने के लिए कई बदलाव हैं, कभी-कभी उनके पास www है। कभी-कभी वे अन्य सबडोमेन नहीं होते हैं, आदि ... जैसा कि आप सोचते हैं उतना साफ नहीं है ... मैं एक क्लीनर तरीके की उम्मीद कर रहा था – Ayyoudy

+0

बस http: // काम करेगा, यह एक साफ जैसा प्रतीत होता है जब तक आप उन्हें ftp आदि जैसे प्रोटोकॉल स्विच करने की अपेक्षा नहीं करते हैं ... –

+0

जैसा मैंने कहा था, कभी-कभी उनके पास पहले से ही http: // है, इसलिए मुझे अभी भी – Ayyoudy

0

यह एक सापेक्ष यूआरआई है।

यदि आप http://google.com/ से लिंक करना चाहते हैं तो वह जगह है जहां आपको लिंक करने की आवश्यकता है।

आप या तो यूआरआई को लपेट रहे हैं जो आप लपेट रहे हैं, या एल्गोरिदमिक अनुमान लगाने का प्रयास करें यदि यह एक सापेक्ष लिंक होना था या नहीं।

ध्यान दें कि आप सुरक्षित रूप से यह नहीं मान सकते कि www होना चाहिए। वेबसाइटों के उपयोग के बाद से सिर्फ एक सम्मेलन है, और अब दृढ़ता से पालन नहीं किया जाता है।

0

आप यूआरएल से पहले // जोड़ सकते हैं और यह काम करना चाहिए।

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