How to detect/track postback in javascript?

Viewed 84389

How to detect/track/check postback in javascript(e.g in asp.net Page.isPostBack())? Any suggestion?

11 Answers

This should work for ASP.Net pages without relying on a backend supplied variable/control:

function isPostBack(frmID) {
    var eventtarget = "";
    var eventargument = "";

    if (!!frmID) {
        if (document.forms.length == 0) return false;

        sForm = document.forms[0];
    }
    else {
        sForm = document.getElementById(frmID);

        if (!sForm) return false;
    }

    if (sForm.__EVENTTARGET) eventtarget = sForm.__EVENTTARGET.value;
    else return false;

    if (sForm.__EVENTARGUMENT) eventargument = sForm.__EVENTARGUMENT.value;
    else return false;

    if (eventtarget != "" || eventargument != "") return true;
    else return false;
}

This is a simple JS way to determine the status of IsPostBack that I just got working in the Body of my ASPX page; needed to cause a PostBack during PageLoad for a project.

    <script type="text/javascript">
        if ('False' === '<%= Page.IsPostBack.ToString()%>') 
        {
            __doPostBack();
        }
    </script>
Related