জাভাস্ক্রিপ্ট সহ বর্তমান ইউআরএল পাবেন?


3002

আমি যা চাই তা ওয়েবসাইটের ইউআরএল পাওয়া। কোনও লিঙ্ক থেকে নেওয়া URL নয়। পৃষ্ঠার লোডিংয়ে আমাকে ওয়েবসাইটের সম্পূর্ণ, বর্তমান ইউআরএল দখল করতে সক্ষম হতে হবে এবং আমার দয়া করে এটি করার জন্য এটি একটি পরিবর্তনশীল হিসাবে সেট করতে হবে।



উত্তর:


3680

ব্যবহার করুন:

window.location.href 

মন্তব্যে উল্লিখিত হিসাবে, নীচের লাইনটি কাজ করে তবে এটি ফায়ারফক্সের জন্য বাগড হয়েছে।

document.URL;

কেবলমাত্র পড়ার জন্য, DOMString প্রকারের URL দেখুন ।


142
ফায়ারফক্স 12 এ document.URLসম্পত্তি window.locationঅ্যাঙ্কর (#) এর পরে আপডেট হয় না , যখন window.location.hrefহয়। আমি এখানে একটি লাইভ ডেমো একসাথে রেখেছি : jsfiddle.net/PxgKy আমি ফায়ারফক্সের অন্য কোনও সংস্করণ পরীক্ষা করিনি। document.URLক্রোম 20 এবং আই 9 তে কোনও সমস্যা ব্যবহার করা যায় নি।
টেল্মো মার্কস 16

88
এছাড়াও আপনি হোস্ট এবং পরিষ্কার অবস্থান পেতে পারেন: window.location.hostএবংwindow.location.href.toString().split(window.location.host)[1]
আলি youhannaei

8
এবং document.baseURIতারপর কি সম্পর্কে। মূলত সেখানে URL টি পেতে 3 টি উপায় আছে document.baseURI, document.URL, & location
মুহাম্মদ উমর

20
-1: আপনার যদি ফ্রেম, চিত্র বা ফর্ম থাকে name="URL"তবে এই সম্পত্তিটি documentবস্তুর উপরে ছায়াযুক্ত হবে এবং আপনার কোডটি ভেঙে যাবে। সেক্ষেত্রে, document.URLপরিবর্তে DOM নোড পড়ুন হবে। হিসাবে গ্লোবাল অবজেক্টের বৈশিষ্ট্যগুলি ব্যবহার করা আরও ভাল window.location.href
রায় টিঙ্কার

13
জয়ের জন্য "window.location.href"
গ্যাব্রিয়েলবিবি

663

ইউআরএল তথ্য অ্যাক্সেস

জাভাস্ক্রিপ্ট আপনাকে বর্তমান ইউআরএল পুনরুদ্ধার এবং পরিবর্তন করার জন্য অনেকগুলি পদ্ধতি সরবরাহ করে যা ব্রাউজারের ঠিকানা বারে প্রদর্শিত হয়। এই সমস্ত পদ্ধতিতে Locationঅবজেক্টটি ব্যবহার করা হয় যা Windowবস্তুর বৈশিষ্ট্য । আপনি Locationনিম্নরূপে একটি নতুন অবজেক্ট তৈরি করতে পারেন যার বর্তমান URL রয়েছে:

var currentLocation = window.location;

বেসিক ইউআরএল স্ট্রাকচার

<protocol>//<hostname>:<port>/<pathname><search><hash>
  • প্রোটোকল: ইন্টারনেটে সংস্থান অ্যাক্সেস করতে ব্যবহৃত প্রোটোকল নাম নির্দিষ্ট করে। (এইচটিটিপি (এসএসএল ব্যতীত)) বা এইচটিটিপিএস (এসএসএল সহ)

  • হোস্ট-নেম: হোস্টের নামটি সংস্থানটির মালিকানাধীন হোস্টটিকে নির্দিষ্ট করে। উদাহরণস্বরূপ www.stackoverflow.com,। একটি সার্ভার হোস্টের নাম ব্যবহার করে পরিষেবা সরবরাহ করে।

  • পোর্ট: একটি নির্দিষ্ট প্রক্রিয়াটি সনাক্ত করতে ব্যবহৃত একটি পোর্ট নম্বর যা একটি সার্ভারে পৌঁছে যখন কোনও ইন্টারনেট বা অন্য নেটওয়ার্ক বার্তা ফরোয়ার্ড করা হয়।

  • পথনাম:পাথের পাথটি ওয়েব ক্লায়েন্ট অ্যাক্সেস করতে চায় এমন হোস্টের মধ্যে থাকা নির্দিষ্ট সংস্থান সম্পর্কে তথ্য দেয়। উদাহরণস্বরূপ /index.html,।

  • অনুসন্ধান: একটি কোয়েরি স্ট্রিং পথের উপাদানটিকে অনুসরণ করে এবং তথ্যের একটি স্ট্রিং সরবরাহ করে যা সংস্থানটি কোনও উদ্দেশ্যে ব্যবহার করতে পারে (উদাহরণস্বরূপ, অনুসন্ধানের জন্য প্যারামিটার হিসাবে বা প্রক্রিয়াজাতকরণের জন্য ডেটা হিসাবে)।

  • হ্যাশ: একটি URL এর অ্যাঙ্কর অংশটিতে হ্যাশ চিহ্ন (#) অন্তর্ভুক্ত রয়েছে।

এগুলোর সাথে Location বস্তুর বৈশিষ্ট্যগুলির সাহায্যে আপনি এই URL টির সমস্ত উপাদান এবং সেগুলি কী সেট করতে বা ফিরে আসতে পারে তা অ্যাক্সেস করতে পারেন:

  • সূরা - সম্পূর্ণ ইউআরএল
  • প্রোটোকল - ইউআরএলের প্রোটোকল
  • নিমন্ত্রণকর্তা - ইউআরএলের হোস্টনাম এবং পোর্ট
  • হোস্ট-নেম - - ইউআরএলের হোস্ট-নেম
  • বন্দর - সার্ভারটি ইউআরএল এর জন্য ব্যবহার করে
  • পথনাম - URL এর পাথ নাম
  • অনুসন্ধান - URL এর ক্যোয়ারী অংশ
  • হ্যাশ - URL এর অ্যাঙ্কর অংশ ch

আমি আশা করি আপনি উত্তর পেয়েছেন ..


7
তারা এর "পদ্ধতি" নয় window.location, কিন্তু সম্পত্তি, এবং এখানে আমরা একটি উদাহরণ আছে : var stringPathName = window.location.pathname
পিটার ক্রাউস

@FabioC। আপনি এটি দ্বারা মুছে ফেলতে পারেন substring। তবে, এটি কার্যকর হতে পারে যখন আপনি পুনর্নির্দেশ করতে ব্যবহার করতে চান document.location = "/page.html";মূল পৃষ্ঠাতে পুনঃনির্দেশিত হবেpage.html
FindOut_Quran

1
এটি কেবল উত্তর দেওয়া প্রশ্নের চেয়ে বেশি উত্তর দেয়। প্রকৃতপক্ষে, আমি সম্ভবত প্রায় এক মাস আগে ইউআরএল স্ট্রিংয়ের এক বা একাধিক নির্দিষ্ট অংশ পাওয়ার জন্য ভাল উপায় অনুসন্ধান করেছিলাম (আমার মনে হয় এটি সম্ভবত আমার বর্তমান পৃষ্ঠার সন্ধান করার চেষ্টা ছিল), এবং অন্যান্য প্রশ্নগুলি আরও বেশি থাকলেও তবুও, তাদের উত্তরগুলি এই উত্তর হিসাবে সেই উদ্দেশ্যে কার্যকর এবং সোজা ছিল না।
Panzercrisis

1
যদিও একটি দ্রুত পরামর্শ: উপরে বর্ণিত মৌলিক ইউআরএল কাঠামোর জন্য একটি স্পট রয়েছে searchতবে নীচের বর্ণনগুলির তালিকায় এটিকে বলা হয় query। হতে পারে হয় তাদের সাথে পুনর্মিলন করা যেতে পারে, বা আরও ব্যাখ্যা যুক্ত করা যেতে পারে।
Panzercrisis

1
এটিকে 'অনুসন্ধান' নয় 'কোয়েরি' বলা হয়
অ্যাপোলো ডেটা

320

ব্যবহারের window.locationজন্য পড়া এবং লেখার প্রবেশাধিকার জন্য অবস্থান বস্তুর বর্তমান ফ্রেম সঙ্গে যুক্ত। আপনি যদি কেবল ঠিকানাটি কেবল পঠনযোগ্য স্ট্রিং হিসাবে পেতে চান তবে আপনি ব্যবহার করতে পারেন document.URL, যা একই মান হিসাবে হওয়া উচিত window.location.href



264

বর্তমান পৃষ্ঠার ইউআরএল পেয়েছে:

window.location.href

3
মনে রাখবেন যে এটি উইন্ডোর অবস্থান নথির নয়।
গম্বো

16
ইহা একই জিনিস. সম্পূর্ণ বর্তমান URL ডকুমেন্টের পাথ (বাহ্যিক ঠিকানা) বোঝায়।
জানোনি

2
এটি কি ডকুমেন্ট.আরল এর মতো মানক করা হয়েছে? (আমি একটি
ডাব্লু

documentস্পেস দ্বারা সংজ্ঞায়িত নথির গাছের মূল root windowসাধারণত সমতুল্য তবে এটি কিছু অদ্ভুত পরিস্থিতিতে নাও থাকতে পারে।
broinjc

57

ঠিক আছে, খালি জাভাস্ক্রিপ্ট ব্যবহার করে বর্তমান পৃষ্ঠার পুরো URL পাওয়া সহজ। উদাহরণস্বরূপ, এই পৃষ্ঠায় এই কোডটি ব্যবহার করে দেখুন:

window.location.href;
// use it in the console of this page will return
// http://stackoverflow.com/questions/1034621/get-current-url-in-web-browser"

window.location.hrefসম্পত্তি বর্তমান পৃষ্ঠার URL ফেরৎ।

document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>

<body>
  <h2>JavaScript</h2>
  <h3>The window.location.href</h3>
  <p id="root"></p>
</body>

</html>

পাশাপাশি এগুলি উল্লেখ করা খারাপ নয়:

  • আপনার যদি কোনও আপেক্ষিক পথের প্রয়োজন হয় তবে কেবল ব্যবহার করুন window.location.pathname;

  • আপনি যদি হোস্টের নাম পেতে চান তবে আপনি ব্যবহার করতে পারেন window.location.hostname;

  • এবং যদি আপনার আলাদাভাবে প্রোটোকল পেতে হয় তবে ব্যবহার করুন window.location.protocol

    • এছাড়াও, আপনার পৃষ্ঠার হয়েছে থাকে hashট্যাগ, আপনি এটা পছন্দ পেতে পারেন: window.location.hash

তাই window.location.hrefএকবারে সব হ্যান্ডেল করে ... মূলত:

window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href;
    //true

windowইতিমধ্যে উইন্ডো স্কোপে থাকলেও ব্যবহারের প্রয়োজন নেই ...

সুতরাং, সেক্ষেত্রে আপনি ব্যবহার করতে পারেন:

location.protocol

location.hostname

location.pathname

location.hash

location.href

জাভাস্ক্রিপ্ট সহ বর্তমান ইউআরএল পান


window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href; সবসময় সত্য হয় না! উইন্ডো.লোকেশন.পথনামে জিইটি পরামিতি অনুপস্থিত।
AssassiN


35

বিকাশকারী সরঞ্জাম খুলুন , কনসোলে নিম্নলিখিত টাইপ করুন এবং এন্টার টিপুন

window.location

উদাহরণস্বরূপ: বর্তমান পৃষ্ঠায় ফলাফলের স্ক্রিনশট নীচে দেওয়া হয়েছে।

এখানে চিত্র বর্ণনা লিখুন

আপনার এখান থেকে যা প্রয়োজন তা ধরুন। :)


29

ব্যবহার করুন: window.location.href

উপরে উল্লিখিত হিসাবে, document.URL আপডেট করার সময় আপডেট হয় নাwindow.locationএমডিএন দেখুন ।


21
  • ব্যবহার window.location.hrefসম্পূর্ণ ইউআরএল পেতে ।
  • window.location.pathnameহোস্টটি রেখে URL টি পেতে ব্যবহার করুন ।

4
উইন্ডো.লোকেশন.পথনামে কোয়েরি এবং হ্যাশ খণ্ড অন্তর্ভুক্ত নয়
ওএমজিপিওপি


10
var currentPageUrlIs = "";
if (typeof this.href != "undefined") {
       currentPageUrlIs = this.href.toString().toLowerCase(); 
}else{ 
       currentPageUrlIs = document.location.toString().toLowerCase();
}

উপরের কোডটিও কাউকে সহায়তা করতে পারে


2
আপনি URL এ টটলওয়ারকেস () প্রয়োগ করেছেন যা এটি আসলে পরিবর্তন করে। কিছু সার্ভারগুলি কেস সেনসিটিভ, (লিনাক্স, ইত্যাদি ...)
অ্যান্টনিভিও

আপনার verbosely ব্যবহার করা উচিত। এই কোডটি কেবলমাত্র এই প্রেক্ষাপটে কাজ করে যেখানে এই === উইন্ডো, তবে এটি সর্বদা ক্ষেত্রে নাও হয় বিশেষত যদি কেউ এই সমাধানটি আটকে দেয়।
ডেডবয়

এটি "কিছু" সার্ভার নয় যা কেস-সংবেদনশীল। এটি বেশিরভাগ সার্ভার। সুতরাং আমি অ্যান্টনিভোর সাথে একমত: ইউআরএল এর কেস পরিবর্তন করা খুব খারাপ ধারণা।
mivk

আপনি URLC ((URL) এ টানতে পারবেন না এটির URL টি এটি ভেঙে ফেলার নিশ্চয়তা নেই !!! যদি ইউআরএল http://www.server.com/path/to/Script.php?option=A1B2C3থাকে তবে ফাইল সিস্টেমটি কেস সেনসিটিভ থাকলে (লিনাক্স / ইউনিক্স) অপরিহার্য স্ক্রিপ্ট.পিপি এবং স্ক্রিপ্ট.পিপি একই রকম নয় the এবং কেস সেনসিটিভ না হলেও (উইন্ডোজ, কিছু ম্যাক ওস), ?option=A1B2C3এর মতো নয় ?option=a1b2c3, এমনকি এটিও নয় ?Option=A1B2C3। কেবল সার্ভার ক্ষেত্রে সংবেদনশীল নয়: www.server.com বা www.SeRvEr.cOm একই।
ফ্রান্সেসকোএমএম

8

দ্রুত রেফারেন্সের জন্য ফলাফল যুক্ত করা হচ্ছে

দ্বারা window.location;

 Location {href: "/programming/1034621/get-the-current-url-with-javascript",
 ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ, …}

document.location

  Location {href: "/programming/1034621/get-the-current-url-with-javascript", 
ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ
, …}

window.location.pathname

"/questions/1034621/get-the-current-url-with-javascript"

window.location.href

"/programming/1034621/get-the-current-url-with-javascript"

location.hostname

"stackoverflow.com"

7

ক্যোয়ারী স্ট্রিং সহ সম্পূর্ণ URL- এর জন্য:

document.location.toString().toLowerCase();

হোস্ট URL এর জন্য:

window.location

11
আপনি URL এ টটলওয়ারকেস () প্রয়োগ করেছেন যা এটি আসলে পরিবর্তন করে। কিছু সার্ভারগুলি কেস সেনসিটিভ, (লিনাক্স, ইত্যাদি ...)
অ্যান্থনিভিও

যেমনটি বলা হয়েছে, আপনি লাওয়ারকেস () করতে পারবেন না এমন ইউআরএল এটি ভঙ্গ না করার বিষয়ে নিশ্চিত! তাহলে URL টি server.com/path/to/Script.php?option=A1B2C3 , যদি ফাইল সিস্টেম কেস সংবেদনশীল (লিনাক্সের / ইউনিক্স) না necessarilly Script.php এবং script.php একই। এবং কেস সেনসিটিভ না হলেও (উইন্ডোজ, কিছু ম্যাক ওস),? বিকল্প = এ 1 বি 2 সি 3? বিকল্প = a1b2c3, বা এমনকি? বিকল্প = এ 1 বি 2 সি 3 এর সমান নয়? কেবল সার্ভার ক্ষেত্রে সংবেদনশীল নয়: www.server.com বা www.SeRvEr.cOm একই।
ফ্রান্সেসকোএমএম

এটি নির্দেশ করার জন্য অ্যান্টনিভিওকে ধন্যবাদ। সম্পূর্ণ URL পেতে আমরা কেবল ডকুমেন্ট.লোকেশন.টোস্ট্রিং () ব্যবহার করতে পারি। toLowerCase () আপনার স্ক্রিপ্টে indexOf এর মতো তুলনা করা ছিল।
সৈয়দ নাসির আব্বাস

4

Jstl এ আমরা ব্যবহার করে বর্তমান ইউআরএল পাথ অ্যাক্সেস করতে পারি pageContext.request.contextPath। আপনি যদি একটি আজাক্স কল করতে চান তবে নীচের URL টি ব্যবহার করুন।

url = "${pageContext.request.contextPath}" + "/controller/path"

উদাহরণ: পৃষ্ঠার জন্য এটি http://stackoverflow.com/posts/36577223দেবে http://stackoverflow.com/controller/path


4

বর্তমান অবস্থান অবজেক্টটি পাওয়ার উপায় window.location

এর সাথে এর তুলনা করুন document.location, যা মূলত কেবলমাত্র বর্তমান ইউআরএলকে স্ট্রিং হিসাবে ফিরিয়ে দেয়। সম্ভবত বিভ্রান্তি এড়াতে, document.locationপ্রতিস্থাপন করা হয়েছিল document.URL

এবং, সমস্ত আধুনিক ব্রাউজার এতে মানচিত্র document.locationকরে window.location

বাস্তবে, ক্রস ব্রাউজার সুরক্ষার জন্য, আপনার window.locationপরিবর্তে ব্যবহার করা উচিত document.location


3

যারা আসল ইউআরএল অবজেক্ট চান তাদের পক্ষে সম্ভাব্যত এমন কোনও ইউটিলিটির জন্য যা ইউআরএলকে আর্গুমেন্ট হিসাবে গ্রহণ করে:

const url = new URL(window.location.href)

https://developer.mozilla.org/en-US/docs/Web/API/URL


3

নিখিল অগ্রওয়ালের উত্তর দুর্দান্ত, কেবলমাত্র এখানে একটি সামান্য উদাহরণ যুক্ত করে আপনি বিভিন্ন উপাদান ক্রিয়ায় দেখতে কনসোলে করতে পারেন:

এখানে চিত্র বর্ণনা লিখুন

আপনি যদি পথ বা ক্যোয়ারী প্যারামিটার ছাড়াই বেস URL চান (উদাহরণস্বরূপ AJAX অনুরোধগুলি বিকাশ / মঞ্চায়ন এবং উত্পাদন সার্ভার উভয় ক্ষেত্রেই কাজ করার বিরুদ্ধে) করতে window.location.originপারেন তবে এটি প্রোটোকলের পাশাপাশি portচ্ছিক বন্দর রাখবে (জ্যাঙ্গো বিকাশে, আপনি কখনও কখনও একটি মানহীন বন্দর রয়েছে যা এটি ভেঙে দেয় যদি আপনি কেবল হোস্টনাম ইত্যাদি ব্যবহার করেন))



0

আপনি বর্তমান পৃষ্ঠার সম্পূর্ণ লিঙ্কটি location.href পেতে এবং বর্তমান নিয়ামকের লিংক পেতে, ব্যবহার করুন:

location.href.substring(0, location.href.lastIndexOf('/'));


0

আপনি যদি একটি নির্দিষ্ট লিঙ্কের উল্লেখ করছেন যা একটি আইডি রয়েছে এই কোডটি আপনাকে সহায়তা করতে পারে।

$(".disapprove").click(function(){
    var id = $(this).attr("id");

    $.ajax({
        url: "<?php echo base_url('index.php/sample/page/"+id+"')?>",
        type: "post",
        success:function()
        {
            alert("The Request has been Disapproved");
            window.location.replace("http://localhost/sample/page/"+id+"");
        }
    });
});

আমি আইডি জমা দিতে এবং উইন্ডো.লোকেশন.রেপ্লেস ব্যবহার করে পৃষ্ঠাটি পুনর্নির্দেশ করতে এখানে এজাক্স ব্যবহার করছিid=""যেমনটি বলা হয়েছে তেমন একটি বৈশিষ্ট্য যুক্ত করুন ।



-2

প্রথমত পৃষ্ঠার জন্য চেক সম্পূর্ণরূপে লোড হয়

browser,window.location.toString();

window.location.href

তারপরে এমন একটি ফাংশন কল করুন যা url, URL পরিবর্তনশীল এবং কনসোলে মুদ্রণ করে,

$(window).load(function(){
   var url = window.location.href.toString();
   var URL = document.URL;
   var wayThreeUsingJQuery = $(location).attr('href');
   console.log(url);
   console.log(URL);
   console.log(wayThreeUsingJQuery );
});
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.