JavaScript成功消息消失了



html按钮:

<button type="submit" class="btn btn-default" id="addBtn" onclick="addfunction();">Add</button>

addFunction()代码:

    var title = document.getElementById("TitleInput").value;
var ID = firebase.database().ref().child('emp').push().key;
//upload pic
var filename = selectionfile;
filename = newsID;
var storageRef = firebase.storage().ref(filename);
var uploadTask = storageRef.put(selectionfile);
if (user != null) {
    userid = user.uid;
    var Dataa = {
        ID: ID,
        title: title,
    };
    var updates = {};
    updates['/emp/' + ID] = Dataa;
    var returnUpdate = firebase.database().ref().update(updates);
    if (returnUpdate) {
        var mess = document.getElementById("confirm_mess");
        mess.setAttribute("class", "bg-success h4");
        mess.setAttribute("style", "padding: 1%; margin: 1% 9% 0 35%");
        mess.innerHTML = "done";
    }
}

}这是验证代码

$(function () {
$("#title_span").hide();
var error_title = false;
$("#TitleInput").focusout(function () {
    Title_validation();
});

function Title_validation() {
    var title = $("#TitleInput").val();
    if (title == "") {
        $("#title_span").html("wrong input");
        $("#title_span").show();
        error_title = true;
    }
    else {
        $("#title_span").hide();
    }
}

$("#my_form").submit(function () {
    error_title = false;
    Title_validation();
    if (error_title == false) {
        return true;
    }
    else {
        return false;
    }
});

});

我的问题是,当我单击"添加"按钮时,"完成"消息立即消失,因为令人耳目一新,我希望该消息出现几秒钟,然后刷新页面。我怎样才能做到这一点?知道我尝试使用setTimeout,但它不起作用。

type="submit"更改为 type="button"

如果您的按钮必须提交表单删除type="submit",请将<button>标签更改为<a>,然后将代码更改为以下内容。您还必须在表格中添加ID:

<script>
addfunction() {
    var title = document.getElementById("TitleInput").value;
var ID = firebase.database().ref().child('emp').push().key;
if (user != null) {
    userid = user.uid;
    var Dataa = {
        ID: ID,
        title: title,
    };
    var updates = {};
    updates['/emp/' + ID] = Dataa;
    var returnUpdate = firebase.database().ref().update(updates);
    if (returnUpdate) {
        var mess = document.getElementById("confirm_mess");
        mess.setAttribute("class", "bg-success h4");
        mess.setAttribute("style", "padding: 1%; margin: 1% 9% 0 35%");
        mess.innerHTML = "done";
    }
setTimeout(function () { //wait 5 seconds
document.getElementById(yourForm).submit; //submit your form
    }, 5000);
}
}
</script>

或发送所有内容后显示消息。我认为您使用表格提交数据。只需添加到您的<form> action=?done=true然后,如果变量为true,请调用脚本:

<?php
if (isset($done)) {
echo "<script>your script</script>"; //or do whatever you want if the var is true
}

?>

最新更新