2012-07-16 49 views
5

में प्रश्न चिह्न के बाद सबकुछ हटा रहा है, मैं सोच रहा था कि क्या मैं किसी URL में प्रश्न चिह्न के बाद सब कुछ हटा सकता हूं?jquery url

http://www.site.com?some_parameters_continue_forever

मैं सिर्फ .remove() उपयोग कर सकते हैं? पैरामीटर के अंदर क्या रखा जाना चाहिए?

yourUrl.replace(/\?.+/, '') 

reomve() डोम सामान के लिए है:

धन्यवाद

उत्तर

3

आप इस सरल regex का उपयोग कर सकते हैं। चूंकि यूआरएल ब्राउज़र द्वारा नियंत्रित किया जाता है जब आप यूआरएल पृष्ठ पुनः लोड बदलने

var url = "http://www.somexample.com?a=b&c=2&d=3"; 
url = url.substring(0 , url.indexOf('?')+1); 
4

इस स्निपेट का प्रयास करें। फिर भी क्या आप जिन पृष्ठों ? निशान प्रकार के बाद सामान की जरूरत नहीं है पर, ऐसा करने के लिए .. चाहते

window.location = "http://www.mysite.com" //or whatever your site url is 

गतिशील ऐसा करने के लिए आप नीचे दिए गए समारोह का उपयोग कर सकते हैं और फिर उपयोग करें window.location

function getPathFromUrl(url) { 
    return url.split("?")[0]; 
} 

नोट: जब आप यूआरएल बदलते हैं तो पेज रीफ्रेश हो जाएगा।

+0

क्या यह संभव होगा यदि मैं सिर्फ '?' से अधिक जोड़ सकता हूं, तो कहें कि यह '?' या 'और 'जैसे अन्य पत्र की जांच करेगा? – hellomello

+0

यह हमेशा url – amd

+0

में पहले प्रश्न चिह्न से मेल खाता है, मैं सोच रहा था कि प्रतिस्थापन में कोई '?' नहीं है और इसके बजाय यह '' '' है। मैं सोच रहा था कि क्या ऐसी चीज करना संभव है जैसे 'url.indexOf ('? ',' & ') + 1) ' – hellomello

9

:

+0

ध्यान देने योग्य एक बात (भले ही उत्तर सही है): हाँ यह मान्य है एक यूआरएल में एक से अधिक प्रश्न चिह्न, http://stackoverflow.com/questions/2924160/is-it-valid-to-have-more-than-one-question-mark-in-a-url देखें तो अगर आप शेष यूआरएल स्ट्रिंग चाहते हैं, आप "ur ".slit ("? ") का उपयोग नहीं कर सकते हैं [1];' –

+0

बीटीडब्ल्यू, शेष यूआरएल स्ट्रिंग (सभी पैराम युक्त) प्राप्त करने का समाधान होगा: ' url.substring (url.indexOf ('?') + 1); ' –

+0

यहां एक त्वरित लाइव डेमो है http://jsbin.com/xikufatohi/1/edit?js,console –