我正在运行以下代码:
iframedoc.getElementsByTagName('form')[0].submit();
我需要在提交表单后立即执行代码。是submit()
阻止,还是我需要其他方法来确定表单何时提交?
答案 0 :(得分:2)
不,触发表单提交不会阻止或返回任何有用的内容。它只是告诉浏览器创建一个呈现新页面的请求。但是,对于iframe,onload
事件可用于处理表单提交后的响应。
iframedoc = iframe.contentDocument;
iframe.onload = function(e) {
alert('frame loaded');
// read its url, content, etc...
};
iframedoc.getElementsByTagName('form')[0].submit();
// immediately returns undefined and your code proceeds
由于JavaScript在单个帖子中运行,因此您无法看到加载的框架'警报直到所有后续代码完成后,浏览器提交表单,并触发onload事件。