I have a web form created using .net and in this form has a frame which has its source from another HTML page (created by courselab software). I call a javascript code whenever the user completes the page and click a submit button and exits normally or whenever the user navigates away from the page based on the javascript event "onbeforeunload".

The code works just perfectly using 

**Firefox in both cases**
\**IE on Windows XP in both cases*\*

Still it works in **CHROME** if the user clicked on the submit button (this submit button generated by courselab software which calls the javascript code),

but if the user navigates away from the web form, this code is being called using the "onbeforeunload" and the code renders correctly but the submit input is never fired.

**Similary this code does not fire using IE on Windows 7.**

I have also called the code "onunload" of the form, but still nothing happens.

**Update**
IE 8 
Firefox 3.6.1.3
Chrome 9.0.597.98

the main web form has the following 

```
<div id="FOContent">
<iframe  runat=server id="mainiframe" name="mainiframe" scrolling="no" frameborder="no"
width="1000" height="920"></iframe>
</div>

```

The frame content comes from this HTML page

```
<body style="margin-left:0px;margin-top:0px;margin-right:0px;margin-bottom:0px;"  onload="Run(true)" onunload="Shutdown()" onbeforeunload="Shutdown()" oncontextmenu="return false">
<div id="boardFrame" style="position:absolute;left:0px;top:0px;width:1000;height:700">
</div>
<div id="divEmail"></div>
</body>

```

And the javascript code being called for "onunload" or "onbeforeunload" is 

```
function LMSShutdown() {
if (submit_Var == false) {
    var sAiccData = AICC_PrepareData();  // prepare data from the CourseLab
    var strQuizResults
    strQuizResults = "";
    var nPos1 = sAiccData.indexOf("Score=");
    nPos1 = nPos1 + 6;
    var ePos1 = nPos1 + 2
    var score = sAiccData.substring(nPos1, ePos1);

    var sHTML = "";
    var qTxt;
    qTxt = ""

    var qrStr = window.location.search;
    var spQrStr = qrStr.substring(1);
    var arrQrStr = new Array();
    // splits each of pair
    var arr = spQrStr.split("&");
    for (var i = 0; i < arr.length; i++) {
        // splits each of field-value pair
        var index = arr[i].indexOf("=");
        var key = arr[i].substring(0, index);
        var val = arr[i].substring(index + 1);
        var id1
        var id2
        if (key == "")
            {key = "Q"+i}
        qTxt = qTxt + "&" + key + "=" + val;
        if (i == 0)
        { id1 = val; }
        else
        { id2 = val; }
}
// saves each of field-value pair in an array variable
sHTML += '<FORM id="formQuiz" method="POST" action="../../../StudentView/QuizProcess.aspx?submit_Var=' + 'false' + '&score=' + score + qTxt + '">';
var spQrStr = g_arVars["writing"];
var arrQrStr = new Array();
// splits each of pair
var arr = spQrStr.split("@@@");
for (var i = 0; i < arr.length; i++) {
// splits each of field-value pair
var index = arr[i].lastIndexOf(":");
var key = arr[i].substring(0, index);
var val = arr[i].substring(index + 1);
if (key != "")
{qTxt = qTxt + "&" + key + "=" + val;
sHTML += '<INPUT TYPE="hidden" NAME="' + key + '" VALUE=\'' + val + '\'>';
}
}
sHTML += '<br><input name="btnSubmit" id="btnSubmit" type="button"><br>';
sHTML += '</FORM>';
document.getElementById("divEmail").innerHTML = sHTML;
document.getElementById("formQuiz").submit();
submit_Var = true;
}
}

```

The QuizProcess.aspx page has not much in HTML, but it has vb .net code to store data to database

The issue is that the function LMSShutdown is being called in all browsers on different platforms, but the form QuizProcess is not being submitted only in (chrome on Windows XP or 7 ) and in (IE 8 when using Windows 7) strangely works fine in IE 8 on Windows XP.