After two hours of debugging, I've figured out the problem. The async endpoint is not sending back valid XML. Instead it sends something like this:
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [ ['$','$'] ],
displayMath: [ ['$$','$$'] ],},
TeX: {equationNumbers: {
autoNumber: "AMS"
}, Augment: { Definitions: {
macros: {
overbracket: ['UnderOver','23B4',1],
underbracket: ['UnderOver','23B5',1],
}
}}},
});
</script>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> <link href="http://aimath.org/knowlstyle.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="http://aimath.org/knowl.js"></script><?xml version="1.0" encoding="UTF-8"?>
<smf>
<preview>
<subject><![CDATA[Re: Previous years resources]]></subject>
<body><![CDATA[testing]]></body>
</preview>
<errors serious="0" topic_locked="0">
<caption name="guestname" class="" />
<caption name="email" class="" />
<caption name="evtitle" class="" />
<caption name="subject" class="" />
<caption name="question" class="" />
</errors>
<last_msg>1111</last_msg>
</smf>
This is not valid XML because it contains multiple root nodes. Only the <smf> node is actually desired in the response, I believe.
Actually, both Chrome and Firefox are "broken" because of this. Chrome sees that the XML is invalid and falls back to reloading the page (which it shouldn't have to do if the XML was correct, I think). On the other hand, Firefox thinks that XML was returned, and chokes on trying to process it.