Перезагрузить и отобразить сообщение - PullRequest
3 голосов
/ 09 октября 2009

Я хочу перезагрузить страницу после удаления строки из таблицы, а затем отобразить сообщение. Ниже приведен код JavaScript:

if(action == 'delete'){
  window.location.reload(true);
  //tried to set timeout here, no luck :(
  document.getElementById('messageSpan').innerHTML = "The value has been deleted."; 
}

Кажется, что функция перезагрузки выполняется после изменения содержимого messageSpan, поэтому функция перезагрузки стирает содержимое messageSpan.

Ответы [ 4 ]

1 голос
/ 23 мая 2013

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

HTML (вставить в любое место тега BODY):

<div id="dvLoading"></div>

CSS

#dvLoading {
    background:url(../theImages/loader.gif) no-repeat center center;
    height: 100px;
    width: 100px;
    position: fixed;
    left: 50%;
    top: 50%;
    margin: -25px 0 0 -25px;
    z-index: 9999999999999999;
}

JQuery

$(window).load(function() {
    $('#dvLoading').fadeOut(2000);
});

Изображение загрузчика:

Loadere

Сработало как шарм для меня. Надеюсь, это поможет с вашим вопросом.

1 голос
/ 30 марта 2010

не используйте перезагрузку. используйте строку запроса, чтобы передать значение обратно на страницу, чтобы сообщить ей, была ли операция удаления успешной или нет

т.е. self.location.href = "yourPage.html? result = success"

Ваша страница должна затем проверить элемент строки запроса результата и отобразить соответствующее сообщение.

но взгляните на jquery и ajax, вам, возможно, вообще не придется делать обратную передачу, чтобы обновить сетку

1 голос
/ 09 октября 2009

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

if(action == 'delete'){
  document.getElementById('messageSpan').innerHTML = "The value has been deleted."; 

  setTimeout(function () { // wait 3 seconds and reload
    window.location.reload(true);
  }, 3000);
}

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

0 голосов
/ 09 октября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...