Javascript 跨域表单提交状态的变相判断

来源:互联网 发布:账本软件 编辑:程序博客网 时间:2024/06/11 23:52
<pre name="code" class="html">通过表单在iframe内向一个跨域的url提交的时候,如何判断提交成功了呢?这个,基本上,很难,因为浏览器安全沙箱的限制,我们没有办法通过获得iframe内部不同域页面的信息。换种思维,如果开始可以获得iframe内部页面信息,那么不能获得的时候,不就说明表单已经提交了么~百度提供给竞价用户使用的商务中心留言本就是采用此方法


实例:<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body style="background:#a7a7a7;"><iframe id="testiframe" name="testiframe"></iframe><form method="post" action="http://www.test.com/testaction.asp" target="testiframe" name="testform"><input type="text" name="dddd"><input type="submit" value="ddd" name="submitbtn"/></form></body><script>document.testform.onsubmit = function () { document.testform.submitbtn.disabled = true; submitMonitor();}function submitMonitor () { try{ var hash = document.getElementById('testiframe').contentWindow.location.hash; setTimeout(submitMonitor,100); } catch (e) { document.getElementById('testiframe').src = "about:blank"; document.testform.submitbtn.disabled = false; }}</script></html>

0 0
原创粉丝点击