我创建了一个API.AI聊天机器人,并在我的html文件中使用了它的“web demo”集成。我的意思是API.AI给了我一个嵌入式iframe,像这样:如何访问跨域API.AI iframe元素
<iframe id="ifrm" width="350" height="430" src="https://console.api.ai/api-client/demo/embedded/...."></iframe>
和我在我的HTML文件中使用它。
现在我想要得到<input>
标签的文字,里面是上面的。
<input type="text" name="q" id="query" placeholder="Ask something...">
我试过不同的方法来得到这个<input>
文本。例如:
$('#ifrm').contents().find("#query")
但结果是"undefined"
。 有没有人知道我应该怎么做才能在我的HTML文件中输入这个输入标签的文本?
在此先感谢
非常感谢,但它们不在同一个域下.iframe在API.AI域下,而我的html文件不在。所以我用上面的代码得到了这个错误:TypeError:iframe.contentDocument为null。有没有办法在不同的领域做这项工作? – sun
出于安全原因,没有。我会更新我的答案来解释这一点。 – Lite20