javascript - 获取 API - 定位 Iframe

标签 javascript ecmascript-6 forms fetch-api

使用 html 表单的 target 属性,您可以发布表单数据,然后在 iframe 中显示 html-server-response。

form.setAttribute("target", "nameOfIframe");

使用 ecmascript fetch api 可以实现同样的功能(无需创建实际的 html 表单元素)吗?

最佳答案

使用 JavaScript/EcmaScript 更新 IFRAME 的内容相当简单,可以使用 srcdoc 来完成属性。

document.getElementById('fetchTarget').srcdoc = `<!DOCTYPE html><p>Hello World!</p>`;
<iframe id="fetchTarget">
</iframe>

您需要做的就是安排更新它,作为 fetch 调用处理的一部分:

fetch(`https://jsonplaceholder.typicode.com/posts/1`)
  .then(response => {
    console.log(response);
    if (response.ok){
      return response.text();
    }
  })
  .then(text => {
    document.getElementById('fetchTarget').srcdoc = text;  
  });
<iframe id="fetchTarget">
</iframe>

此 URL 并不是一个特别好的示例,因为它返回 JSON 而不是 HTML,但它并不真正影响结果。

关于javascript - 获取 API - 定位 Iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50884838/

相关文章:

javascript - 按两个条件的键对对象进行排序,然后按字母顺序排序

import - ES6 模块 : transitively exporting symbols (i. 例如,来自导入的文件)

javascript - 捕获提交事件,验证,如果可以的话。继续提交表格

jquery - 目标ajax提交到弹出窗口

javascript - 如何防止使用 jQuery 或 Javascript 重复提交?

javascript - 如何使用 Node.js 和 mongodb 存储 session 值?

javascript 根据其他下拉列表更改下拉列表值

javascript - 流畅的滚动页面

javascript - Jquery - 从查询字符串中获取 '#' 值之后而不是 '?' 符号值之后

javascript - react-select 使用标签作为传递给组件的值,而不是选项数组中的值