AFAIK all you need to do is construct a query string using names & values, pass it to send(), i.e.
Code:
xhr.send("arg1=value1&arg2=value2&arg3=value3");
that way, you're simulating how the form variables are passed to the server.
e.g.
where 'user' and 'email' take the place of form field names, and 'john' and '
[email protected]' their respective values.
In general, to be safe, you need to call encodeURIComponent() for each arg name and value, as in the serialize() function on pages 540 - 541
HTH
Alan