Hướng dẫn refresh part of page javascript - làm mới một phần của trang javascript

Giả sử rằng bạn có 2 div bên trong tệp HTML của mình.

some text
some other text

Bản thân chương trình Java không thể cập nhật nội dung của tệp HTML vì HTML có liên quan đến máy khách, trong khi đó, Java có liên quan đến phần cuối.

Tuy nhiên, bạn có thể giao tiếp giữa máy chủ (back-end) và máy khách.

Những gì chúng ta đang nói đến là Ajax, mà bạn đạt được bằng cách sử dụng JavaScript, tôi khuyên bạn nên sử dụng JQuery, một thư viện JavaScript phổ biến.

Giả sử bạn muốn làm mới trang mỗi khoảng không đổi, sau đó bạn có thể sử dụng hàm khoảng để lặp lại cùng một hành động mỗi lần x.

setInterval(function()
{
    alert("hi");
}, 30000);

Bạn cũng có thể làm điều đó như thế này:

setTimeout(foo, 30000);

WHEREA FOO là một chức năng.

Thay vì cảnh báo ("Hi"), bạn có thể thực hiện yêu cầu AJAX, gửi yêu cầu đến máy chủ và nhận một số thông tin (ví dụ: văn bản mới) mà bạn có thể sử dụng để tải vào Div.

Một Ajax cổ điển trông như thế này:

var fetch = true;
var url = 'someurl.java';
$.ajax(
{
    // Post the variable fetch to url.
    type : 'post',
    url : url,
    dataType : 'json', // expected returned data format.
    data : 
    {
        'fetch' : fetch // You might want to indicate what you're requesting.
    },
    success : function(data)
    {
        // This happens AFTER the backend has returned an JSON array (or other object type)
        var res1, res2;

        for(var i = 0; i < data.length; i++)
        {
            // Parse through the JSON array which was returned.
            // A proper error handling should be added here (check if
            // everything went successful or not)

            res1 = data[i].res1;
            res2 = data[i].res2;

            // Do something with the returned data
            $('#div1').html(res1);
        }
    },
    complete : function(data)
    {
        // do something, not critical.
    }
});

Nơi ở phụ trợ có thể nhận được dữ liệu đã đăng và có thể trả về một đối tượng dữ liệu thông tin, ví dụ (và rất thích) JSON, có nhiều hướng dẫn ngoài kia với cách làm như vậy, Gson từ Google là thứ mà tôi Được sử dụng một lúc trước, bạn có thể xem xét nó.

Tôi không chuyên nghiệp với Java Post nhận và JSON trở lại loại đó vì vậy tôi sẽ không cho bạn một ví dụ với điều đó nhưng tôi hy vọng đây là một khởi đầu tốt.

Hướng dẫn refresh part of page javascript - làm mới một phần của trang javascript

Khi bạn đang phát triển các ứng dụng như blog hoặc một trang mà dữ liệu có thể thay đổi dựa trên các hành động của người dùng, bạn sẽ muốn trang đó làm mới thường xuyên.

Khi trang làm mới hoặc tải lại, nó sẽ hiển thị bất kỳ dữ liệu mới nào dựa trên các tương tác của người dùng đó. Tin tốt - Bạn có thể thực hiện loại chức năng này trong JavaScript với một dòng mã duy nhất.

Trong bài viết này, chúng tôi sẽ tìm hiểu cách tải lại một trang web trong JavaScript, cũng như xem một số tình huống khác mà chúng tôi có thể muốn thực hiện các tải lại này và cách làm như vậy.

Cách làm mới một trang trong JavaScript với location.reload()

Bạn có thể sử dụng phương thức JavaScript location.reload() để tải lại URL hiện tại. Phương pháp này hoạt động tương tự như nút Làm mới của trình duyệt.

Phương pháp

setInterval(function()
{
    alert("hi");
}, 30000);
1 là phương pháp chính chịu trách nhiệm tải lại trang. Mặt khác,
setInterval(function()
{
    alert("hi");
}, 30000);
2 là một giao diện đại diện cho vị trí thực tế (URL) của đối tượng mà nó được liên kết - trong trường hợp này là URL của trang chúng tôi muốn tải lại. Nó có thể được truy cập thông qua
setInterval(function()
{
    alert("hi");
}, 30000);
3 hoặc
setInterval(function()
{
    alert("hi");
}, 30000);
4.

Sau đây là cú pháp tải lại một trang:

window.location.reload();

Lưu ý: Khi bạn đọc qua một số tài nguyên trên trang tải lại trang trong JavaScript, bạn sẽ bắt gặp các giải thích khác nhau nói rằng phương thức Relaod lấy các giá trị boolean làm tham số và

setInterval(function()
{
    alert("hi");
}, 30000);
5 giúp tải lại lực lượng để bỏ qua bộ đệm của nó. Nhưng đây không phải là trường hợp. When you read through some resources on “page reload in JavaScript”, you'll come across various explanations stating that the relaod method takes in boolean values as parameters and that the
setInterval(function()
{
    alert("hi");
}, 30000);
5 helps force-reload so as to bypass its cache. But this isn't the case.

Theo tài liệu MDN, một tham số Boolean không phải là một phần của thông số kỹ thuật hiện tại cho location.reload() - và trên thực tế chưa bao giờ là một phần của bất kỳ đặc điểm kỹ thuật nào cho location.reload() từng được xuất bản.

Mặt khác, các trình duyệt như Firefox, hỗ trợ việc sử dụng tham số Boolean không chuẩn được gọi là

setInterval(function()
{
    alert("hi");
}, 30000);
8 cho location.reload(), hướng dẫn Firefox bỏ qua bộ đệm và tải lại tài liệu hiện tại.

Ngoài Firefox, bất kỳ tham số nào bạn chỉ định trong cuộc gọi location.reload() trong các trình duyệt khác sẽ bị bỏ qua và không có hiệu lực.

Cách thực hiện trang tải lại/làm mới trong javascript khi nhấp vào nút

Cho đến nay chúng ta đã thấy cách tải lại hoạt động trong JavaScript. Bây giờ, hãy để bây giờ xem cách bạn có thể thực hiện điều này khi một sự kiện xảy ra hoặc khi xảy ra một hành động như một nút nhấp chuột:


Lưu ý: Điều này hoạt động tương tự như khi chúng ta sử dụng

setTimeout(foo, 30000);
1. This works similarly to when we use
setTimeout(foo, 30000);
1.

Cách làm mới/tải lại một trang tự động trong JavaScript

Chúng tôi cũng có thể cho phép một trang đề cập đến sau một thời gian cố định sử dụng phương thức

setTimeout(foo, 30000);
2 như được thấy dưới đây:

setTimeout(() => {
  document.location.reload();
}, 3000);

Sử dụng mã trên trang web của chúng tôi sẽ tải lại cứ sau 3 giây.

Cho đến nay, chúng tôi đã thấy cách sử dụng phương thức tải lại trong tệp HTML của chúng tôi khi chúng tôi đính kèm nó vào các sự kiện cụ thể, cũng như trong tệp JavaScript của chúng tôi.

Cách làm mới/tải lại một trang bằng hàm lịch sử trong JavaScript

Hàm lịch sử là một phương pháp khác để làm mới một trang. Hàm Lịch sử được sử dụng như bình thường để điều hướng trở lại hoặc chuyển tiếp bằng cách truyền theo giá trị tích cực hoặc âm.

Ví dụ: nếu chúng ta muốn quay ngược thời gian, chúng ta sẽ sử dụng:

history.go(-1);

Điều này sẽ tải trang và đưa chúng tôi đến trang trước mà chúng tôi đã điều hướng. Nhưng nếu chúng ta chỉ muốn làm mới trang hiện tại, chúng ta có thể làm như vậy bằng cách không chuyển bất kỳ tham số nào hoặc bằng cách vượt qua

setTimeout(foo, 30000);
3 (giá trị trung tính):

________số 8

Lưu ý: Điều này cũng hoạt động giống như cách chúng tôi đã thêm phương thức

setInterval(function()
{
    alert("hi");
}, 30000);
1 vào phương thức
setTimeout(foo, 30000);
2 và sự kiện nhấp chuột trong HTML.
This also works the same way as we added the
setInterval(function()
{
    alert("hi");
}, 30000);
1 method to the
setTimeout(foo, 30000);
2 method and the click event in HTML.

Gói lên

Trong bài viết này, chúng tôi đã học cách làm mới một trang bằng JavaScript. Chúng tôi cũng đã làm rõ một quan niệm sai lầm phổ biến dẫn đến những người chuyển các tham số Boolean vào phương pháp

setInterval(function()
{
    alert("hi");
}, 30000);
1.

Cảm ơn vì đã đọc!



Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Làm thế nào để bạn làm mới một phần trong JavaScript?

Bạn có thể sử dụng phương thức JavaScript vị trí.Reload () để tải lại URL hiện tại. Phương pháp này hoạt động tương tự như nút Làm mới của trình duyệt.use the location. reload() JavaScript method to reload the current URL. This method functions similarly to the browser's Refresh button.

Làm cách nào để làm mới chỉ một phần của một trang?

Làm mới một phần của một trang định kỳ, bạn có thể sử dụng chức năng tải lại khung hình định kỳ trong trang Frameset.Trong mã trên, Right Right_Frame đã tải lại mỗi giây.hàm setInterval () có liên quan rất chặt chẽ với setTimeout () - cả hai đều có cú pháp tương tự: setInterval (biểu thức, khoảng);use the frame “reload” function periodically in frameset page itself. In the above code, “right_frame” reloads every second. setInterval() function is very closely related to setTimeout() – both have similar syntax: setInterval ( expression, interval );

Làm cách nào để làm mới một div cụ thể?

Làm thế nào để bạn làm mới một bộ phận JavaScript ?..
Sử dụng cửa sổ.địa điểm.href trong.load () để tải lại một div trong javascript ..
Sử dụng ##Id> *với.load () để tải lại một div trong javascript ..
Sử dụng cửa sổ.setInterval () để làm mới một div trong javascript ..

Làm cách nào để tự động làm mới một phần của trang HTML?

Cách tiếp cận 1: Người ta có thể tự động làm mới trang web bằng thẻ meta trong phần tử đầu của HTML của bạn bằng thuộc tính HTTP-Equiv.Đây là một thuộc tính sẵn có với HTML 5. Người ta có thể thêm khoảng thời gian làm mới bằng thuộc tính nội dung trong thẻ meta.using the meta tag within the head element of your HTML using the http-equiv property. It is an inbuilt property with HTML 5. One can further add the time period of the refresh using the content attribute within the Meta tag.