我想讓頁面重新加載後的警告框,但它不起作用。
請更正我的代碼並告訴我爲什麼?如何在JavaScript中重新加載頁面後顯示提醒?
$("button").click(function(){
window.location.reload();
alert("Hello world");
});
我想讓頁面重新加載後的警告框,但它不起作用。
請更正我的代碼並告訴我爲什麼?如何在JavaScript中重新加載頁面後顯示提醒?
$("button").click(function(){
window.location.reload();
alert("Hello world");
});
您可以使用sessionStorage
:
$("button").click(function() {
sessionStorage.reloadAfterPageLoad = true;
window.location.reload();
});
$(function() {
if (sessionStorage.reloadAfterPageLoad) {
alert("Hello world");
sessionStorage.reloadAfterPageLoad = false;
}
})
嗨,我修復了一些格式。在未來,如果你願意用'sms'這個詞來代表'你',而不是'u',那麼這將是非常棒的。對讀者來說更容易 - 謝謝你的貢獻。 –
@BenjaminGruenbaum。謝謝。請記住這一點。 :) –
嘿,我只是注意到,這段代碼不起作用。 'if(sessionStorage.reloadAfterPageLoad)'將始終執行。有關詳細信息,請參閱http://stackoverflow.com/questions/39127730/jquery-if-condition-is-false-but-still-executed/39127785。 – Adam
這就是所謂的onload。在DOM準備好了之前,它已經成爲了waaaaay,DOM準備實際上是爲了onload等待圖像而創建的。
window.onload = function() {
alert("It's loaded!");
//dom not only ready, but everything is loaded
}
而jQuery Javascript解決方案是綁定document.ready()中的window.onload事件。
$(window).bind("load", function() {
// code here
});
PHP中?reload
字符串做在鏈接href的request.GET
的一些骯髒的方法
<a class="button" href="?reload/">reload and alert</a>
<script type="text/javascript">
args = location.search.substr(1);
if (args=='reload/')alert('page reloaded');
</script>
您確定檢查文件是否被重新加載,而不僅僅是文件加載? –
@BenjaminGruenbaum現在它會起作用 – suhailvs
第1步:寫你自己的功能彈出ok提示按鈕(我已經創建了接受消息,提示類型,方法名稱的參數化函數)
功能AlertMessageOk(STR,警告類型,方法)
{$('#AlertMessage .divDialogElements').empty(); $('#AlertMessage .divDialogElements').append(msg); if (alertType == "success") { $('#AlertMessage #modalAlertHeaderTitle').html("Success"); $('#AlertMessage #modalAlertHeaderTypeClass').attr("class", "modal-header alert-success"); } else if (alertType == "error") { $('#AlertMessage #modalAlertHeaderTitle').html("Error"); $('#AlertMessage #modalAlertHeaderTypeClass').attr("class", "modal-header alert-danger"); } else if (alertType == "info") { $('#AlertMessage #modalAlertHeaderTitle').html("Status"); $('#AlertMessage #modalAlertHeaderTypeClass').attr("class", "modal-header alert-info"); } else if (alertType == "warning") { $('#AlertMessage #modalAlertHeaderTitle').html("Warning"); $('#AlertMessage #modalAlertHeaderTypeClass').attr("class", "modal-header alert-warning"); } $('#AlertMessage #btnAlertOk').attr("onclick", method); $('#AlertMessage').modal('show'); }
步驟2:在你的Ajax response.result ==真調用AlertMessageOk功能。我已經通過方法名稱來重新加載頁面。
功能buttonActivate_onClick(STOREID){
$.ajax({
type: "POST",
url: "/configuration/activateStore",
timeout: 180000,
data: { StoreID: storeID },
success: function (response) {
if (response.result == true) {
AlertMessageOk("Store configuration for Store ID " + storeID + " is successfully activated.", "success", "reloadPage();");
}
},
error: function (xhr, textstatus) {
AlertMessage("Error: " + xhr.statusText + " [" + xhr.status + "]", "error");
}
});
$('#wait_load').css("display", "none");
}
function reloadPage() {
location.reload();
}
想想看,當你頁面重新加載,它不會自動記憶前一頁的狀態。當你的頁面重新加載完成後,它會綁定一個點擊事件,直到有人點擊你的按鈕。 –
當你重新加載時,你刷新整個頁面,它不會有回調 –
我更正確地更新了我的答案 – suhailvs