Is it possible that the form elements you are filling with client-side JavaScript are disabled? If so, ASP.NET might not recognize the values.
Here is an example:
<asp:TextBox ID="TextBox1" Enabled="False" Runat="Server" />
<script type="text/javascript">
document.forms[0].elements["TextBox1"].style.disabled = false;
document.forms[0].elements["TextBox1"].value = "Value set from Javascript";
</script>
When this code is executed, ASP.NET assumes that the textbox is disabled, and therefore ignores its value during the postback. This means that TextBox1.Text will always be empty. As far as I am aware, this behavior is applicable to all form elements. If ASP.NET believes they are disabled and are later enabled and filled in by client-side JavaScript, their values will not be retained during the postback.