javascript - 在外部网页上预填写表格

标签 javascript html forms iframe

有一些网站(不是我的,是第三方的)上面有一个表格。为了使用户不必填写此表单,我想以某种方式用我存储在数据库中的数据预填充它。

假设它看起来像这样:

<form id='form1'>
  <input type='text' id='input1' />
  <input type='submit' />
</form>

我认为解决方案是创建我的网页,并在其上创建一个包含我要填写的表单的 iframe。

<iframe id='myFrame' src='http://www.someSite.html'>

我遵循了一些有关如何访问 iframe 中的内容的建议:Getting Contents of Iframe with Pure JavaScript , How to get the body's content of an iframe in Javascript? ,但问题是,当我关注它们时,它说页面内容为空。

我发现这是因为带有表单的页面位于不同的域中,所以网络浏览器不允许它。可以在浏览器中关闭此功能,但我需要它独立于浏览器设置工作。

最佳答案

您无法在简单的网页中执行您所要求的操作。安全限制的存在是有原因的;想象一下,如果恶意用户想要在 iframe 中加载您的银行网站并让您登录。然后,托管页面上的恶意脚本将可以访问您输入凭据、帐户信息等的表单。

正如 @mplungjan 所说,您必须通过从服务器发出请求并代理它们来解决此问题,以便远程内容实际上首先通过您的网站,或者让用户使用插件修改其浏览器环境或小书签。

关于javascript - 在外部网页上预填写表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22541763/

相关文章:

javascript - JS表单-动态填充下拉列表-多选、表单填写

javascript - Firebase 是否发送给定路径下的所有数据?

ASP.Net AJAX JavaScript 序列化错误

javascript - 如何从 PHP 中提取 JSON 数据并将其显示在数据表中?

javascript - 更改 URL 字符串中的数据 - 使用 API 进行数据库请求

jquery - 使用 jquery 插件进行图像缩放

html - 使用 flexbox 将可滚动容器与选项卡面板(Office UI Fabric Pivot)样式布局对接

html - 删除只读属性的尖线

python - Django 形成 HTML5 验证模式

javascript - Laravel 按 href 提交删除表单