আমি jQuery ব্যবহার করছি। আমি কীভাবে বর্তমান ইউআরএলটির পাথ পাব এবং এটিকে একটি ভেরিয়েবলের জন্য নির্ধারণ করব?
উদাহরণ ইউআরএল:
http://localhost/menuname.de?foo=bar&number=0
আমি jQuery ব্যবহার করছি। আমি কীভাবে বর্তমান ইউআরএলটির পাথ পাব এবং এটিকে একটি ভেরিয়েবলের জন্য নির্ধারণ করব?
উদাহরণ ইউআরএল:
http://localhost/menuname.de?foo=bar&number=0
উত্তর:
পথটি পেতে, আপনি ব্যবহার করতে পারেন:
var pathname = window.location.pathname; // Returns path only (/path/example.html)
var url = window.location.href; // Returns full URL (https://example.com/path/example.html)
var origin = window.location.origin; // Returns base URL (https://example.com)
খাঁটি jQuery শৈলীতে:
$(location).attr('href');
অবস্থান অবজেক্টে অন্যান্য বৈশিষ্ট্যও রয়েছে, যেমন হোস্ট, হ্যাশ, প্রোটোকল এবং পথের নাম।
.attr()
। (1) এটি কোনও উপাদান নয়, তাই $(location)
সর্বোপরি ছায়াময়, এবং (২) এটি কার্যকর হলেও, আপনাকে .prop()
সম্পত্তি পেতে ব্যবহার করা উচিত । .attr()
এইচটিএমএল বৈশিষ্ট্য জন্য।
http://www.refulz.com:8082/index.php#tab2?foo=789
Property Result
------------------------------------------
host www.refulz.com:8082
hostname www.refulz.com
port 8082
protocol http:
pathname index.php
href http://www.refulz.com:8082/index.php#tab2
hash #tab2
search ?foo=789
var x = $(location).attr('<property>');
আপনার যদি jQuery থাকে তবে এটি কাজ করবে। উদাহরণ স্বরূপ:
<html>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script>
$(location).attr('href'); // http://www.refulz.com:8082/index.php#tab2
$(location).attr('pathname'); // index.php
</script>
</html>
/index.php
পরিবর্তে হওয়া উচিত index.php
।
attr
এইচটিএমএল বৈশিষ্ট্য ব্যবহার করে সেট করা যেতে পারে এমন জিনিসগুলির জন্য, কেবল ডিওএম অবজেক্টে ব্যবহার করার কথা।
আপনার যদি ইউআরএলে উপস্থিত হ্যাশ প্যারামিটারগুলির প্রয়োজন হয় তবে এটি window.location.href
আরও ভাল পছন্দ হতে পারে।
window.location.pathname
=> /search
window.location.href
=> www.website.com/search#race_type=1
window.location.hash
আপনি জাভাস্ক্রিপ্টের অন্তর্নির্মিত window.location
অবজেক্টটি ব্যবহার করতে চাইবেন ।
window.location.pathname
?
কেবল জাভাস্ক্রিপ্টে এই ফাংশনটি জুড়ুন এবং এটি বর্তমান পথের পরম পথটি ফিরিয়ে দেবে।
function getAbsolutePath() {
var loc = window.location;
var pathName = loc.pathname.substring(0, loc.pathname.lastIndexOf('/') + 1);
return loc.href.substring(0, loc.href.length - ((loc.pathname + loc.search + loc.hash).length - pathName.length));
}
আমি আশা করি এটি আপনার পক্ষে কাজ করে।
var pathName = loc.pathname.substring(0, loc.pathname.lastIndexOf('/'));
উইন্ডো.লোকেশন জাভাস্ক্রিপ্টের একটি বিষয়। এটি নিম্নলিখিত ডেটা ফেরত দেয়
window.location.host #returns host
window.location.hostname #returns hostname
window.location.path #return path
window.location.href #returns full current url
window.location.port #returns the port
window.location.protocol #returns the protocol
jquery আপনি ব্যবহার করতে পারেন
$(location).attr('host'); #returns host
$(location).attr('hostname'); #returns hostname
$(location).attr('path'); #returns path
$(location).attr('href'); #returns href
$(location).attr('port'); #returns port
$(location).attr('protocol'); #returns protocol
windo.location.origin
?
এটি আরও জটিল বিষয় হিসাবে অনেকে ভাবেন। বেশ কিছু ব্রাউজার সমর্থন বিল্ট ইন জাভাস্ক্রিপ্ট অবস্থান বস্তু এবং পরামিতি / পদ্ধতি প্রবেশযোগ্য মাধ্যমে যুক্ত window.location
বা document.location
। যাইহোক, ইন্টারনেট এক্সপ্লোরারের বিভিন্ন স্বাদ (,,7) একই পদ্ধতিতে এই পদ্ধতিগুলিকে সমর্থন করে না, ( window.location.href
? window.location.replace()
সমর্থিত নয়) তাই আপনাকে ইন্টারনেট এক্সপ্লোরারকে হ্যান্ড হোল্ড করতে সর্বদা শর্তাধীন কোড লিখে আলাদাভাবে অ্যাক্সেস করতে হবে।
সুতরাং, আপনার কাছে jQuery উপলভ্য এবং লোড থাকলে, আপনি jQuery (অবস্থান) ব্যবহার করতে পারেন, অন্যরা উল্লিখিত হিসাবে কারণ এটি এই সমস্যাগুলি সমাধান করে। তবে, আপনি উদাহরণস্বরূপ করছেন-জাভাস্ক্রিপ্টের মাধ্যমে কিছু ক্লায়েন্ট-সাইড জিওলোকেশন পুনঃনির্দেশ (যা গুগল ম্যাপস এপিআই এবং লোকেশন অবজেক্ট পদ্ধতি ব্যবহার করে), তবে আপনি পুরো jQuery লাইব্রেরিটি লোড করতে এবং আপনার শর্তাধীন কোডটি লিখতে না চাইতে পারেন ইন্টারনেট এক্সপ্লোরার / ফায়ারফক্স / ইত্যাদি প্রতিটি সংস্করণ পরীক্ষা করে।
ইন্টারনেট এক্সপ্লোরার সামনের প্রান্তের কোডিং বিড়ালটিকে অসন্তুষ্ট করে তোলে, তবে jQuery দুধের একটি প্লেট।
কেবল হোস্ট নামের জন্য, ব্যবহার করুন:
window.location.hostname
জাভা স্ক্রিপ্ট বর্তমান ইউআরএল পুনরুদ্ধার করার জন্য অনেকগুলি পদ্ধতি সরবরাহ করে যা ব্রাউজারের ঠিকানা বারে প্রদর্শিত হয়।
পরীক্ষার ইউআরএল:
http://
stackoverflow.com/questions/5515310/get-current-url-with-jquery/32942762
?
rq=1&page=2&tab=active&answertab=votes
#
32942762
resourceAddress.hash();
console.log('URL Object ', webAddress);
console.log('Parameters ', param_values);
ফাংশন:
var webAddress = {};
var param_values = {};
var protocol = '';
var resourceAddress = {
fullAddress : function () {
var addressBar = window.location.href;
if ( addressBar != '' && addressBar != 'undefined') {
webAddress[ 'href' ] = addressBar;
}
},
protocol_identifier : function () { resourceAddress.fullAddress();
protocol = window.location.protocol.replace(':', '');
if ( protocol != '' && protocol != 'undefined') {
webAddress[ 'protocol' ] = protocol;
}
},
domain : function () { resourceAddress.protocol_identifier();
var domain = window.location.hostname;
if ( domain != '' && domain != 'undefined' && typeOfVar(domain) === 'string') {
webAddress[ 'domain' ] = domain;
var port = window.location.port;
if ( (port == '' || port == 'undefined') && typeOfVar(port) === 'string') {
if(protocol == 'http') port = '80';
if(protocol == 'https') port = '443';
}
webAddress[ 'port' ] = port;
}
},
pathname : function () { resourceAddress.domain();
var resourcePath = window.location.pathname;
if ( resourcePath != '' && resourcePath != 'undefined') {
webAddress[ 'resourcePath' ] = resourcePath;
}
},
params : function () { resourceAddress.pathname();
var v_args = location.search.substring(1).split("&");
if ( v_args != '' && v_args != 'undefined')
for (var i = 0; i < v_args.length; i++) {
var pair = v_args[i].split("=");
if ( typeOfVar( pair ) === 'array' ) {
param_values[ decodeURIComponent( pair[0] ) ] = decodeURIComponent( pair[1] );
}
}
webAddress[ 'params' ] = param_values;
},
hash : function () { resourceAddress.params();
var fragment = window.location.hash.substring(1);
if ( fragment != '' && fragment != 'undefined')
webAddress[ 'hash' ] = fragment;
}
};
function typeOfVar (obj) {
return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase();
}
EX: ডিফল্ট পোর্ট নম্বর সহ
<protocol>//<hostname>:<port>/<pathname><search><hash>
https://en.wikipedia.org:443/wiki/Pretty_Good_Privacy
http://stackoverflow.com:80/
ডোমেনের নামগুলি হ'ল আপনি ডোমেন নাম সিস্টেম (ডিএনএস) গাছের নিয়ম এবং পদ্ধতি দ্বারা নিবন্ধভুক্ত। যে কোনও ব্যক্তির DNS সার্ভারগুলি আইপি-অ্যাড্রেসের সাথে সম্বোধনের উদ্দেশ্যে আপনার ডোমেন পরিচালনা করে। ডিএনএস সার্ভারের হায়ারার্কিতে একটি স্ট্যাকওরফালো ডট কমের মূলের নাম কম।
gTLDs - com « stackoverflow (OR) in « co « google
স্থানীয় সিস্টেম যা আপনাকে ডোমেন বজায় রাখতে হবে যা হোস্ট ফাইলগুলিতে পাবলিক নয়।
localhost.yash.com « localhsot - subdomain(
web-server
), yash.com - maindomain(
Proxy-Server
).
myLocalApplication.com 172.89.23.777
যদি প্যারামিটারে একটি যুগ থাকে ?date=1467708674
তবে ব্যবহার করুন।
var epochDate = 1467708674; var date = new Date( epochDate );
ব্যবহারকারীর নাম সহ পাসওয়ার্ড, প্রমাণীকরণ url যদি ব্যবহারকারীর নাম / পাসওয়ার্ডে @ চিহ্ন থাকে
:
Username = `my_email@gmail`
Password = `Yash@777`
তারপর আপনি প্রয়োজন URL- এ এনকোড @
হিসাবে %40
। পড়ুন ...
http://my_email%40gmail.com:Yash%40777@www.my_site.com
encodeURI()
(বনাম) encodeURIComponent()
উদাহরণ
var testURL = "http:my_email@gmail:Yash777@//stackoverflow.com?tab=active&page=1#32942762";
var Uri = "/:@?&=,#", UriComponent = "$;+", Unescaped = "(-_.!~*')"; // Fixed
var encodeURI_Str = encodeURI(Uri) +' '+ encodeURI( UriComponent ) +' '+ encodeURI(Unescaped);
var encodeURIComponent_Str = encodeURIComponent( Uri ) +' '+ encodeURIComponent( UriComponent ) +' '+ encodeURIComponent( Unescaped );
console.log(encodeURI_Str, '\n', encodeURIComponent_Str);
/*
/:@?&=,# +$; (-_.!~*')
%2F%3A%40%3F%26%3D%2C%23 %2B%24%3B (-_.!~*')
*/
এটিও কাজ করবে:
var currentURL = window.location.href;
আপনি উইন্ডো.লোকশন এবং লগইন করতে পারেন এবং কেবলমাত্র ইউআরএল ব্যবহারের জন্য সমস্ত বিকল্প দেখতে পারেন:
window.location.origin
পুরো পথ ব্যবহারের জন্য:
window.location.href
এছাড়াও অবস্থান আছে। _ _
.host
.hostname
.protocol
.pathname
আমার কাছে এটি জিইটি ভেরিয়েবলগুলি সরিয়ে ফেলতে হবে।
var loc = window.location;
var currentURL = loc.protocol + '//' + loc.host + loc.pathname;
আপনি নিজেই জেএস ব্যবহার করে আপনার পাথ পেতে পারেন window.location
বা location
আপনাকে বর্তমান ইউআরএলটির অবজেক্ট দেবে
console.log("Origin - ",location.origin);
console.log("Entire URL - ",location.href);
console.log("Path Beyond URL - ",location.pathname);
var currenturl = jQuery(location).attr('href');
JQuery এবং জাভাস্ক্রিপ্ট ব্যবহার করে বর্তমান ইউআরএল পাওয়ার উদাহরণ এখানে রয়েছে:
$(document).ready(function() {
//jQuery
$(location).attr('href');
//Pure JavaScript
var pathname = window.location.pathname;
// To show it in an alert window
alert(window.location);
});
$.getJSON("idcheck.php?callback=?", { url:$(location).attr('href')}, function(json){
//alert(json.message);
});
নীচে ব্যবহারযোগ্য কোড স্নিপেটগুলির উদাহরণ রয়েছে যা ব্যবহার করা যেতে পারে - উদাহরণগুলির মধ্যে কয়েকটি স্ট্যান্ডার্ড জাভাস্ক্রিপ্ট ফাংশন ব্যবহার করে এবং jQuery এর জন্য নির্দিষ্ট নয়:
দেখুন URL- এর & Querystrings জন্য 8 দরকারী jQuery এর বন্ধকৃত ।
Window.location.href ব্যবহার করুন । এটি আপনাকে সম্পূর্ণ URL দেবে ।
উইন্ডো.লোকেশন আপনাকে বর্তমান ইউআরএল দেবে এবং আপনি এটি থেকে যা খুশি তাবের করতে পারেন ...
Purl.js দেখুন । এটি jQuery এর উপর নির্ভর করে সত্যই সহায়তা করবে এবং এটি ব্যবহার করা যাবে। এটি এর মতো ব্যবহার করুন:
$.url().param("yourparam");
আপনি যদি মূল সাইটের পথ পেতে চান তবে এটি ব্যবহার করুন:
$(location).attr('href').replace($(location).attr('pathname'),'');
.replace('#.*', '')
? শুধু হ্যাশ চিহ্নটিই নয় তবে এর পরে সমস্ত কিছু মুছবেন?
খুব সাধারণভাবে ব্যবহৃত শীর্ষ 3 টি হ'ল
1. window.location.hostname
2. window.location.href
3. window.location.pathname
var path = location.pathname
বর্তমান ইউআরএলটির পথ ফেরায় (jQuery প্রয়োজন হয় না)। এর ব্যবহার window.location
alচ্ছিক।
সমস্ত ব্রাউজার জাভাস্ক্রিপ্ট উইন্ডো অবজেক্ট সমর্থন করে। এটি ব্রাউজারের উইন্ডোটি সংজ্ঞায়িত করে।
গ্লোবাল অবজেক্টস এবং ফাংশনগুলি স্বয়ংক্রিয়ভাবে উইন্ডো অবজেক্টের অংশ হয়ে যায়।
সমস্ত গ্লোবাল ভেরিয়েবলগুলি উইন্ডো অবজেক্টের বৈশিষ্ট্য এবং সমস্ত গ্লোবাল ফাংশন এর পদ্ধতি its
পুরো এইচটিএমএল ডকুমেন্টটি একটি উইন্ডো সম্পত্তিও।
সুতরাং আপনি url সম্পর্কিত সমস্ত বৈশিষ্ট্যগুলি পেতে উইন্ডো.লোকশন অবজেক্টটি ব্যবহার করতে পারেন।
জাভাস্ক্রিপ্ট
console.log(window.location.host); //returns host
console.log(window.location.hostname); //returns hostname
console.log(window.location.pathname); //return path
console.log(window.location.href); //returns full current url
console.log(window.location.port); //returns the port
console.log(window.location.protocol) //returns the protocol
JQuery
console.log("host = "+$(location).attr('host'));
console.log("hostname = "+$(location).attr('hostname'));
console.log("pathname = "+$(location).attr('pathname'));
console.log("href = "+$(location).attr('href'));
console.log("port = "+$(location).attr('port'));
console.log("protocol = "+$(location).attr('protocol'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
location.pathname
আপনি কোথায় ব্যবহার করছেন তা আমি দেখছি location.path
- এই উত্তরটি কী আপডেট করা দরকার?
var newURL = window.location.protocol + "//" + window.location.host + "/" + window.location.pathname;
// get current URL
$(location).attr('href');
var pathname = window.location.pathname;
alert(window.location);
জেএসটিএলে আমরা বর্তমান ইউআরএল পাথটি ব্যবহার করে অ্যাক্সেস pageContext.request.contextPath
করতে পারি, আপনি যদি এজ্যাক্স কল করতে চান,
url = "${pageContext.request.contextPath}" + "/controller/path"
উদাহরণস্বরূপ: পৃষ্ঠায় http://stackoverflow.com/questions/406192
এটি দেবেhttp://stackoverflow.com/controller/path