Hướng dẫn javascript change url parameter and reload - javascript thay đổi tham số url và tải lại

11

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

URL mặc định của tôi sẽ giống như

http://localhost:4444/index.html?file=sample

Và tôi có một danh sách thả xuống với các tên tệp khác nhau, tôi muốn thay thế tham số

location.href = location.href + "filename" ;
0 bằng cách nhấp vào danh sách thả xuống. Đối với mỗi và mọi thay đổi, URL nên được thay đổi với tham số hiện có.
For each and every change the URL should be altered with existing parameter.

Tôi đã thử với sau đây,

location.href = location.href + "filename" ;

Nhưng nó sẽ không thay thế tên tệp.

Đã hỏi ngày 23 tháng 10 năm 2013 lúc 10:09Oct 23, 2013 at 10:09

Hướng dẫn javascript change url parameter and reload - javascript thay đổi tham số url và tải lại

4

Chào mừng bạn đến với năm 2018, bây giờ bạn có thể sử dụng UrlSearchParams để xử lý việc phân tích cú pháp và thay thế bạn nhận được

var params = new URLSearchParams(location.search);
params.set('file', 'sample');
window.location.search = params.toString();

UrlSearchParams sẽ thay thế hoặc thêm tham số vào chuỗi truy vấn khi cần.

Đã trả lời ngày 23 tháng 1 năm 2018 lúc 21:38Jan 23, 2018 at 21:38

Bạn có thể thử điều này:

location.search = location.search.replace(/file=[^&$]*/i, 'file=filename');

Thuộc tính

location.href = location.href + "filename" ;
1 chỉ giữ phần truy vấn của URL để bạn không phải lo lắng rằng bất kỳ phần nào khác của URL (ví dụ: miền hoặc băm) sẽ được sửa đổi. Ngoài ra, Regex sẽ chỉ thay thế tham số
location.href = location.href + "filename" ;
2. Nó rất hữu ích khi bạn sẽ có một số tham số khác trong truy vấn.
Also, the regex will replace only the
location.href = location.href + "filename" ;
2 parameter. It is useful when you'll have some other parameters in query.

Đã trả lời ngày 23 tháng 10 năm 2013 lúc 10:13Oct 23, 2013 at 10:13

Hướng dẫn javascript change url parameter and reload - javascript thay đổi tham số url và tải lại

Matewkamatewkamatewka

9.7562 huy hiệu vàng28 Huy hiệu bạc43 Huy hiệu đồng2 gold badges28 silver badges43 bronze badges

1

Một cách là:

location.href = location.origin + location.pathname + '?file=filename';

Nhưng điều này sẽ chỉ hoạt động khi bạn có một tham số sau

location.href = location.href + "filename" ;
3. Nếu bạn có nhiều hơn - bạn cần phải phân tích lại chúng và áp dụng lại.

Đã trả lời ngày 23 tháng 10 năm 2013 lúc 10:13Oct 23, 2013 at 10:13

Hướng dẫn javascript change url parameter and reload - javascript thay đổi tham số url và tải lại

MatewkamatewkaDziad Borowy

9.7562 huy hiệu vàng28 Huy hiệu bạc43 Huy hiệu đồng4 gold badges39 silver badges51 bronze badges

2

Một cách là:

var filename = 'myFilename.csv';

var paramName = 'file';
var newParam = paramName + '=' + filename;
if(window.location.search){
  var regex = new RegExp(paramName + '=[^&$]*', 'i');
  window.location.search = window.location.search.replace(regex, newParam);
}else{
  window.location.search = newParam;
}

Nhưng điều này sẽ chỉ hoạt động khi bạn có một tham số sau

location.href = location.href + "filename" ;
3. Nếu bạn có nhiều hơn - bạn cần phải phân tích lại chúng và áp dụng lại.Jul 21, 2017 at 20:02

Hướng dẫn javascript change url parameter and reload - javascript thay đổi tham số url và tải lại

Dziad Borowydziad BorowyWeston Ganger

12.2k4 Huy hiệu vàng39 Huy hiệu bạc51 Huy hiệu Đồng3 gold badges39 silver badges38 bronze badges

27JunJun

Với mục đích theo dõi, đôi khi chúng tôi muốn cập nhật các tham số URL trang nhưng không làm mới trang đó (tức là: ứng dụng một trang). Chẳng hạn, nếu chúng ta có theo dõi tiến trình hoặc trở lại một địa điểm cụ thể sau đó.

Làm thế nào để nối các tham số vào URL, nhưng không thực hiện một trang làm mới/tải lại/chuyển hướng?

Nếu bạn đặt một cửa sổ mới. Vị trí bạn sẽ tải lại trang. Nếu bạn muốn tránh điều này, hãy sử dụng JavaScript Replacestate hoặc Pushstate.

Phương pháp này đặc biệt hữu ích khi bạn muốn cập nhật đối tượng trạng thái hoặc URL của mục nhập lịch sử hiện tại để đáp ứng với một số hành động của người dùng. (Nhà phát triển.mozilla.org)

JavaScript: Cập nhật tham số mà không tải lại trang::

  • với thay thế
window.history.replaceState(null, null, '?step=1');
  • Hoặc & nbsp; với Pushstate
window.history.pushState('object or string', 'title', 'new url');

Example:

// currentStep is the variable name of the step 
window.history.replaceState(null, null, '?step='+currentStep );

Cách nhận tham số URL trong JavaScript:

const queryString = window.location.search;
if(queryString) {
  const urlParams = new URLSearchParams(queryString);
  const stepValue = urlParams.get('step');

  // do something with the value.
}

Hy vọng điều đó sẽ giúp / có thể giúp bạn tiết kiệm thời gian :)

bài chuyển hướng

Làm cách nào để thay đổi các tham số trong URL?

Các tham số truy vấn URL có thể dễ dàng sửa đổi bằng cách sử dụng URLSearchParams và giao diện lịch sử:..
// Xây dựng URLSearchParams đối tượng thể hiện từ truy vấn URL hiện tại ..
var queryParams = urlsearchparams mới (cửa sổ. ....
// Đặt giá trị tham số mới hoặc sửa đổi mới ..
Queryparams.....
// Thay thế trình tự hiện tại với cái mới ..

Làm cách nào để thêm hoặc cập nhật tham số chuỗi truy vấn?

Bạn có thể sử dụng API URL gốc của trình duyệt để thực hiện việc này theo cách khá đơn giản, trong đó khóa và giá trị là tên tham số và giá trị tham số của bạn tương ứng.const url = url mới (vị trí. href);URL.SearchParams.use the browser's native URL API to do this in a fairly simple way, where key and value are your parameter name and parameter value respectively. const url = new URL(location. href); url. searchParams.

Làm thế nào để bạn nối một URL?

Dán tham số URL vào cuối URL trong trình chỉnh sửa văn bản .COPY URL đầy đủ với tham số URL được nối thêm. Trên URL đến vị trí mong muốn.Vị trí là nơi mà bạn muốn ứng viên có thể xem và nhấp vào liên kết. Copy the full URL with the appended URL parameter. Post the URL to the desired location. The location is the place from which you would like applicants to be able to see and click the link.

UrlSearchParams là gì?

Giao diện URLSearchParams xác định các phương thức tiện ích để hoạt động với chuỗi truy vấn của URL.defines utility methods to work with the query string of a URL.