hocvietcode.com
  • Trang chủ
  • Học lập trình
    • Lập trình C/C++
    • Lập trình HTML
    • Lập trình Javascript
      • Javascript cơ bản
      • ReactJS framework
      • AngularJS framework
      • Typescript cơ bản
      • Angular
    • Lập trình Mobile
      • Lập Trình Dart Cơ Bản
        • Dart Flutter Framework
    • Cơ sở dữ liệu
      • MySQL – MariaDB
      • Micrsoft SQL Server
      • Extensible Markup Language (XML)
      • JSON
    • Lập trình PHP
      • Lập trình PHP cơ bản
      • Laravel Framework
    • Lập trình Java
      • Java Cơ bản
    • Cấu trúc dữ liệu và giải thuật
    • Lập Trình C# Cơ Bản
    • Machine Learning
  • WORDPRESS
    • WordPress cơ bản
    • WordPress nâng cao
    • Chia sẻ WordPress
  • Kiến thức hệ thống
    • Microsoft Azure
    • Docker
    • Linux
  • Chia sẻ IT
    • Tin học văn phòng
      • Microsoft Word
      • Microsoft Excel
    • Marketing
      • Google Adwords
      • Facebook Ads
      • Kiến thức khác
    • Chia sẻ phần mềm
    • Review công nghệ
    • Công cụ – tiện ích
      • Kiểm tra bàn phím online
      • Kiểm tra webcam online
Đăng nhập
  • Đăng nhập / Đăng ký

Please enter key search to display results.

Home
  • Lập trình Javascript
Lấy tham số đường dẫn hiện tại (current url) bằng javascript

Lấy tham số đường dẫn hiện tại (current url) bằng javascript

  • 10-10-2021
  • trienkhaiweb
  • 0 Comments

Trong lập trình, với một số tình huống chúng ta khó có thể lấy được tham số url hiện tại từ phía server side dể trả cho người dùng, chsung ta có thể sử dụng giải pháp sử dụng javascript để đọc url phía client side và giải quyết vấn đề này.

Mục lục

  • 1.Tham số (parameter) đường dẫn là gì ?
  • 2. Các đối tượng built-in của javascript để đọc url hiện tại và các tham số

1.Tham số (parameter) đường dẫn là gì ?

ví dụ về tham số trên đường dẫn (url parameters)

Nếu bạn đã hiểu về phương thức GET và POST để giao tiếp với server ( submit form ) thì sẽ hiểu rõ ý nghĩa của hình ảnh mình mới chụp, mình xin giải thích lại một cách đơn giản như sau:

Các tham số hiển thị trên URL là các tham số sử dụng trong phương thức GET (GET method) ( các tham số truyền vào để tương tác với server không bị giấu đi và hiển thị rõ ràng trên trình duyệt). Ví dụ trong ngữ cảnh trên, mình đang sửa một bài viết, 2 tham số post và action để nhận diện rằng mình sửa bài viết nào trên server, phía server sẽ nhận được 2 tham số :bài viết có id là 5141 và hành động của mình là edit, và xử lý logic để trả về cho mình giao diện cập nhật.

2. Các đối tượng built-in của javascript để đọc url hiện tại và các tham số

Javascript cung cấp cho chúng ta một số đối tượng built-in để đọc url hiện tại trên trình duyệt

Đối tượng mình muốn nói tới là location, bên trong đối tượng window. Đối tượng này sẽ giúp chúng ta có thể lấy được chuỗi đường dẫn hiện tại, tham số truyền vào, protocol hay port.

Các bạn có thể tham khảo chi tiết về window.location tại đây:

https://www.w3schools.com/js/js_window_location.asp

Đối tượng location này cung cấp giải pháp để chúng ta có thể lấy được querystring (chuỗi truy vấn) hiện tại trên trình duyệt của bạn, bằng thuộc tính search, xét ví dụ đoạn code sau:

var queryString = window.location.search;
console.log(queryString);
// kết quả sẽ in ra trong ngữ cảnh hình ảnh ví dụ trên: ?post=5141&action=edit

Tuy nhiên, để phân tích chi tiết, chúng ta sẽ cần nhiều thứ hơn thế, mình sẽ tiếp tục đi tiếp và phân tích chuỗi truy vấn trên để lấy ra từng tham số, bằng cách khởi tạo một đối tượng mới mà javascript cung cấp để phân tích chuỗi truy vấn và trả ra danh sách tham số là URLSearchParams

Các bạn có thể tham khảo thêm về đối tượng URLSearchParams tại đây:

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

Chúng ta quay lại với ví dụ, code mẫu như sau:

var queryString = window.location.search;
var url_param = new URLSearchParams(queryString);
console.log(url_param );

Khi in ra console, javascript sẽ trả ra cho chúng ta một đối tượng URLSearchParams cấu trúc như hình dưới:

cấu trúc đối tượng URLSearchParams

Chúng ta hoàn toàn có thể xử lý dữ liệu, lấy ra các giá trị của đối tượng này từ các hàm đã được đối tượng cung cấp sẵn. Để lấy ra các tham số của đối tượng này, mình sẽ xử lý như sau:

var queryString = window.location.search;
var url_param = new URLSearchParams(queryString);
console.log(url_param.get('post') );
// kết quả sẽ trả ra 4151 là giá trị của tham số post trong ngữ cảnh trên

Ngoài ra, các bạn có thể tương tác với đối tượng này dựa vào các hàm được cung cấp, quá nhanh và nguy hiểm !

Nếu có câu hỏi hay thắc gì, hãy comment tại đây, chúng tôi sẽ phản hồi hướng dẫn các bạn. Chúc các bạn thành công.

Bài viết liên quan:

TypeScript với Kiểu Dữ Liệu Cơ Bản – 3
TypeScript với Kiểu Dữ Liệu Cơ Bản – 2
TypeScript với Kiểu Dữ Liệu Cơ Bản – 1
Typescript cơ bản và cách cài đặt cho người mới
Thực Hành Micro Frontends
Dynamic Component trong Angular
Async Validator trong Angular Form
Reactive Forms Trong Angular (Phần 2)
Reactive Forms Trong Angular (Phần 1)
Template-driven Forms Trong Angular (Phần 2)
Template-driven Forms Trong Angular (Phần 1)
Guards and Resolvers (Phần 3)

THÊM BÌNH LUẬN Cancel reply

Dịch vụ thiết kế Wesbite

NỘI DUNG MỚI CẬP NHẬT

2. PHÂN TÍCH VÀ ĐẶC TẢ HỆ THỐNG

1. TỔNG QUAN KIẾN THỨC THỰC HÀNH TRIỂN KHAI DỰ ÁN CÔNG NGHỆ THÔNG TIN

Hướng dẫn tự cài đặt n8n comunity trên CyberPanel, trỏ tên miền

Mẫu prompt tạo mô tả chi tiết bối cảnh

Một số cải tiến trong ASP.NET Core, Razor Page, Model Binding, Gabbage collection

Giới thiệu

hocvietcode.com là website chia sẻ và cập nhật tin tức công nghệ, chia sẻ kiến thức, kỹ năng. Chúng tôi rất cảm ơn và mong muốn nhận được nhiều phản hồi để có thể phục vụ quý bạn đọc tốt hơn !

Liên hệ quảng cáo: [email protected]

Kết nối với HỌC VIẾT CODE

© hocvietcode.com - Tech888 Co .Ltd since 2019

Đăng nhập

Trở thành một phần của cộng đồng của chúng tôi!
Registration complete. Please check your email.
Đăng nhập bằng google
Đăng kýBạn quên mật khẩu?

Create an account

Welcome! Register for an account
The user name or email address is not correct.
Registration confirmation will be emailed to you.
Log in Lost your password?

Reset password

Recover your password
Password reset email has been sent.
The email could not be sent. Possible reason: your host may have disabled the mail function.
A password will be e-mailed to you.
Log in Register
×