How to reload page after .submit()

2019-08-02 15:08发布

问题:

I want to reload my page after successful login i.e. whether $.post() returns a 1 page should reload and for a 0 it shouldn't.

For example, my initial attempt:

var logon = false;

$('#formname').submit(function() {
    $.post('load.php', $('#formname').serialize(), function(data) {
        if(data == '0')
            logon = false;
        else
            logon = true;
    });

    return logon;
});

How can I do this?

回答1:

You could use the reload() method:

$('#formname').submit(function() {
    $.post('load.php', $('#formname').serialize(), function(data) {
        if(data == '1') {
            window.location.reload();
        }
    });
    return false;
});

I've intentionally removed the logon variable as it is not needed. AJAX is asynchronous so returning this variable from the submit handler is useless because it won't be assigned a value yet.