javascript - элемента - событие перезагрузка страницы jquery




Как обновить страницу с помощью jQuery? (15)

Вам не нужно ничего из jQuery, чтобы перезагрузить страницу с использованием чистого JavaScript , просто используйте функцию перезагрузки на свойстве location следующим образом:

window.location.reload();

По умолчанию это перезагрузит страницу с помощью кеша браузера (если существует) ...

Если вы хотите сделать перезагрузку страницы, просто передайте истинное значение для перезагрузки, как показано ниже ...

window.location.reload(true);

Кроме того, если вы уже находитесь в области окна , вы можете избавиться от окна и сделать:

location.reload();

Как обновить страницу с помощью jQuery?


Вопрос должен быть,

Как обновить страницу с помощью JavaScript

window.location.href = window.location.href; //This is a possibility
window.location.reload(); //Another possiblity
history.go(0); //And another

Вы избалованы выбором.


Вот решение, которое асинхронно перезагружает страницу с помощью jQuery. Это позволяет избежать мерцания, вызванного window.location = window.location . В этом примере показана страница, которая перезагружается непрерывно, как на панели управления. Он протестирован в битве и работает на экране информационного дисплея на Таймс-сквер.

<!DOCTYPE html>
<html lang="en">
  <head>
    ...
    <meta http-equiv="refresh" content="300">
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
    <script>
    function refresh() {
      $.ajax({
        url: "",
        dataType: "text",
        success: function(html) {
          $('#fu').replaceWith($.parseHTML(html));
          setTimeout(refresh,2000);
        }
      });
    }
    refresh();
    </script>
  </head>
  <body>
    <div id="fu">
      ...
    </div>
  </body>
</html>

Заметки:

  • Использование $.ajax напрямую, как $.get('',function(data){$(document.body).html(data)}) заставляет файлы css / js получать кеш-память , даже если вы используете cache: true , поэтому мы используем parseHTML
  • parseHTML НЕ найдет тег body поэтому всему вашему телу нужно parseHTML дополнительный div, я надеюсь, что этот самородк знаний поможет вам однажды, вы можете догадаться, как мы выбрали id для этого div
  • Используйте http-equiv="refresh" всякий случай, если что-то пойдет не так, как с javascript / server hiccup, тогда страница будет STILL перезагружаться без вашего телефонного звонка
  • Этот подход, вероятно, как-то утешает память, исправление http-equiv исправляет, что

Все ответы здесь хороши. Поскольку вопрос указывает на перезагрузку страницы с помощью jquery , я просто подумал добавить что-то еще для будущих читателей.

jQuery - это кросс-платформенная библиотека JavaScript, предназначенная для упрощения клиентских сценариев HTML.

~ Wikipedia ~

Итак, вы поймете, что основа jquery или jquery основана на javascript . Поэтому переход с чистым javascript лучше, когда дело доходит до простых вещей.

Но если вам нужно решение jquery , вот что.

$(location).attr('href', '');

Вы можете использовать метод JavaScript location.reload() . Этот метод принимает логический параметр. true или false . Если параметр равен true ; страница всегда перезагружается с сервера. Если это false ; который по умолчанию или с пустым браузером параметров перезагружает страницу из своего кеша.

С true параметром

<button type="button" onclick="location.reload(true);">Reload page</button>

С default / false

 <button type="button" onclick="location.reload();">Reload page</button>

Использование jquery

<button id="Reloadpage">Reload page</button>
<script type="text/javascript">
    $('#Reloadpage').click(function() {
        location.reload();
    }); 
</script>

Если вы используете jQuery и хотите обновить, попробуйте добавить jQuery в функцию javascript:

Я хотел скрыть iframe со страницы при нажатии oh h3 , для меня это сработало, но я не смог щелкнуть элемент, который позволил мне просмотреть iframe для начала, если я не обновил браузер вручную ... не идеально ,

Я попробовал следующее:

var hide = () => {
    $("#frame").hide();//jQuery
    location.reload(true);//javascript
};

Смешивание простого Jane javascript с вашим jQuery должно работать.

// code where hide (where location.reload was used)function was integrated, below    
    iFrameInsert = () => {
        var file = `Fe1FVoW0Nt4`;
        $("#frame").html(`<iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/${file}\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen></iframe><h3>Close Player</h3>`);
        $("h3").enter code hereclick(hide);
}

// View Player 
$("#id-to-be-clicked").click(iFrameInsert);

Использовать onclick="return location.reload();" в теге кнопки.

<button id="refersh-page" name="refersh-page" type="button" onclick="return location.reload();">Refesh Page</button>

Много способов будет работать, я полагаю:

  • window.location.reload();
  • history.go(0);
  • window.location.href=window.location.href;

Поскольку вопрос носит общий характер, попробуем подвести итог возможным решениям для ответа:

Простое решение для JavaScript :

Самый простой способ - это однострочное решение, размещенное соответствующим образом:

location.reload();

То, что многие люди отсутствуют здесь, потому что они надеются получить некоторые «точки», состоит в том, что сама функция reload () предлагает логический параметр (параметр: location.reload() ).

Метод Location.reload () перезагружает ресурс из текущего URL-адреса. Его необязательный уникальный параметр - это логическое значение, которое, когда оно истинно, заставляет страницу всегда перезагружаться с сервера. Если он неверен или не указан, браузер может перезагрузить страницу из своего кеша.

Это означает, что есть два способа:

Решение1: принудительно перезагрузить текущую страницу с сервера

location.reload(true);

Решение2: Перезагрузка с кеша или сервера (на основе браузера и вашей конфигурации)

location.reload(false);
location.reload();

И если вы хотите объединить его с jQuery при прослушивании события, я бы рекомендовал использовать метод «.on ()» вместо «.click» или других оболочек событий, например, более правильным решением было бы:

$('#reloadIt').on('eventXyZ', function() {
    location.reload(true);
});

Существует множество способов обновления страницы с помощью JavaScript:

  1. location.reload()
  2. history.go(0)
  3. location.href = location.href
  4. location.href = location.pathname
  5. location.replace(location.pathname)
  6. location.reload(false)

    Если нам нужно было снова вытащить документ с веб-сервера (например, когда содержимое документа изменяется динамически), мы передадим аргумент как true .

Вы можете продолжить создание списка:

var methods = [
  "location.reload()",
  "history.go(0)",
  "location.href = location.href",
  "location.href = location.pathname",
  "location.replace(location.pathname)",
  "location.reload(false)"
];

var $body = $("body");
for (var i = 0; i < methods.length; ++i) {
  (function(cMethod) {
    $body.append($("<button>", {
      text: cMethod
    }).on("click", function() {
      eval(cMethod); // don't blame me for using eval
    }));
  })(methods[i]);
}
button {
  background: #2ecc71;
  border: 0;
  color: white;
  font-weight: bold;
  font-family: "Monaco", monospace;
  padding: 10px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.5s ease;
  margin: 2px;
}
button:hover {
  background: #27ae60;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


Функция jQuery Load также может выполнять обновление страницы:

$('body').load('views/file.html', function () {
    $(this).fadeIn(5000);
});

Чтобы перезагрузить страницу с помощью jQuery, выполните следующие действия:

$.ajax({
    url: "",
    context: document.body,
    success: function(s,x){
        $(this).html(s);
    }
});

Подход, который я использовал, был Ajax jQuery. Я протестировал его в Chrome 13. Затем я поместил код в обработчик, который вызовет перезагрузку. URL "" , что означает эту страницу .


я нашел

window.location.href = "";

или же

window.location.href = null;

также обновляет страницу.

Это значительно облегчает перезагрузку страницы, удаляя любой хэш. Это очень приятно, когда я использую AngularJS в симуляторе iOS, так что мне не нужно повторно запускать приложение.


window.location.reload() перезагрузится с сервера и снова загрузит все ваши данные, скрипты, изображения и т. д.

Поэтому, если вы просто хотите обновить HTML, window.location = document.URL вернется намного быстрее и с меньшим трафиком. Но это не будет перезагружать страницу, если в URL есть хеш (#).


Используйте location.reload() :

$('#something').click(function() {
    location.reload();
});

Функция reload() принимает необязательный параметр, который может быть установлен в true чтобы принудительно перезагрузить сервер, а не кеш. Параметр по умолчанию имеет значение false , поэтому по умолчанию страница может перезагружаться из кеша браузера.





reload