问题描述
- Ajax+nodejs新手求问!
-
我有一个页面A,其中通过iframe加载了一个页面B。页面B里有个表单,表单里有个submit按钮。我在这个B页面的js中为这个submit按钮添加了一个事件函数。在这个事件函数中我创建了一个XMLHttpRequest实例xhr1。然后后台我用nodejs接收提交的表单数据并发送响应内容。我想让响应内容出现在父页面A的特定位置上。现在数据接收、发送响应内容都没有问题,问题是响应的内容不能出现在A页面特定位置上。
我xhr1的onreadystatechange事件函数为xhr1.onreadystatechange=function(){ if (xhr1.readyState==4) { if ((xhr1.status>=200&&htr1.status<300)||xhr1.status==304) { window.parent.document.getElementById("regi").innerHTML=xhr1.responseText; } else{ window.parent.document.getElementById("regi").innerHTML="Unsuccessfull: "; } } }
regi是父页面A中的一个元素的id。
可是,这样写的结果是父页面A的regi元素内容并没有变为xhr1.responseText的内容,xhr1.responseText居然写在了页面B里。请问是哪里出问题了?怎样才能实现我想要的效果?
非常感谢!!
解决方案
你那个按钮时提交表单了吧,都没有执行你 xhr1.onreadystatechange的转换函数,要return false阻止表单提交,或者按钮改为button,不要submit
<input type="submit" onclick="yourfunction();return false;"/>
时间: 2024-08-10 05:54:05