2009-04-22 12 views
5

मैं अपनी जावास्क्रिप्ट में एक पूर्ण यूआरएल चला गया हूं कि मैंने खिड़की के लिए हार्ड कोड किया है। स्थान।

मैं हर बार जब मैं अपने ऐप का परीक्षण कर रहा हूं तो इसे बदलना नहीं चाहता हूं। PHP में मैंने यह पता लगाने के लिए $ _SERVER ["HTTP_HOST"] चर का परीक्षण करके इसे संभाला होगा, और यह पता लगाने के लिए कि मैं किस सर्वर पर हूं, और तदनुसार समायोजित करें। हालांकि, मैं जावा से परिचित नहीं हूं और सोच रहा हूं कि क्या इसकी एक समान विधि है? या अगर जावास्क्रिप्ट में भी एक समान विधि थी?

var url = "http://172.17.1.107/store/results/index.jsp"; 
window.location = url; 

मुझे क्या करना चाहते हैं:

कोड इस प्रकार है

var server = [something that returns just 172.17.1.107 (with or without the http:// is fine)] 
var url = "http://" + server + "/store/results/index.jsp"; 
window.location = url; 

PHP में मैं सिर्फ यह किया होता:

var server = <?= $_SERVER["HTTP_HOST"] ?> 
var url = "http://" + server + "/store/results/index.php"; 
window.location = url; 

कोई भी विचार ? मुझे लगता है कि मैं इस धारणा के तहत काम कर रहा हूं कि आपको जावास्क्रिप्ट में वर्तमान विंडो के स्थान को बदलने के लिए एक पूर्ण यूआरएल करना है। यदि एक पूर्ण यूआरएल के बिना जावास्क्रिप्ट में विंडो स्थान बदलने का दूसरा तरीका है, तो कृपया इसे भी बेझिझक बेझिझक करें।

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

उत्तर

7

क्या आप की जरूरत है:

request.getServerName() 

एक उदाहरण:

<% 
String path = request.getContextPath(); 
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
%> 
-1

आप वास्तव में इस के लिए खोज करना चाहिए था लेकिन JSP में यह बताया गया है:

request.getRemoteHost() 
2

जावास्क्रिप्ट:

var server = window.location.hostname; 
4

स्थान वस्तु has several properties, और एक आप चाहते हैं कि hostname है।

या, आप वैकल्पिक रूप से रूट-रिश्तेदार यूआरएल का उपयोग कर सकते हैं और बस pathname संपत्ति सेट कर सकते हैं और मेजबान व्यवसाय के साथ गड़बड़ नहीं कर सकते!

location.pathname = "/store/results/index.jsp"; 
-3

हो सकता है कि यह मदद कर सकता है।

यह किसी भी शब्द या कुछ भी नहीं चाहते हैं जो आप चाहते हैं। यह आपके अनुरोध के लिए भी काम करेगा।

var str = "Visit Microsoft!"; 
var res = str.replace("Microsoft", "W3Schools"); 
+1

हाँ सुनिश्चित करें, और पानी नीला है। एचटीएफ यह संबंधित है !!! –