首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Google中使用jQuery/javascript

在Google中使用jQuery/javascript
EN

Stack Overflow用户
提问于 2014-10-18 09:13:30
回答 1查看 2.1K关注 0票数 0

我试图在包含google表单的iframe中使用jQuery/javascript。下面是代码片段:

代码语言:javascript
复制
<body>
<iframe id="myFormFrame" src="https://docs.google.com/forms/d/smfjkafj809890dfafhfdfd/viewform?embedded=true" width="760" height="1750" frameborder="0" marginheight="0" marginwidth="0">Loading...</iframe>
<button id="mybtn">Click</button>
<script type="text/javascript">
    $('#mybtn').click(function(){
        var m=document.getElementById("ss-form");
        alert(m.innerHTML);
    });
</script>

单击按钮应该给出表单的innerHTML (在加载到iFrame内部时,它的id为"ss-form")。但这不管用。那么,原因是什么(跨域iframe?)?让jQuery与google协同工作的方法是什么?

如果有用的话,我正在尝试将定制的ajax验证设置到位(例如,email id字段必须包含来自不同数据库的特定列表的电子邮件)。

编辑

这看起来像是一个跨域问题。我心里有这个疑问。但是在阅读了的文章之后,它看起来是可能的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-18 09:19:42

document.getElementById搜索当前文档,而不是加载到框架中的其他文档。

如果框架文档位于您自己的站点上,那么您可以首先访问框架,然后访问文档(通过contentDocument)。然后打电话给getElementById

既然它是跨源的,那就失败了。如果你考虑一下,如果Mallory的邪恶网站在你登录时把你银行的网上银行网站放在一个框架里,那么原因是显而易见的。

如果您有谷歌的合作(您没有),那么您可以使用postmessage在框架之间传递消息。

这看起来像是一个跨域问题。我心里有这个疑问。但是在看了这篇文章之后,它看起来是可能的。

他们没有使用谷歌托管的表单。他们使用谷歌工具设计表单,然后将HTML复制到自己的网站上。如果谷歌实施CSRF保护,那就会崩溃。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26438090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档