使用form表单的action提交并接收后端返回的消息

使用form表单的action提交表单是同步提交的方式,会跳转页面,所以无法获取后端返回来到消息。这样描述或许没有太大感觉,如果我要通过表单的方式上传文件,并接收后台返回来的响应数据;这样说是不是就感同深受了呢。

  1. 在form标签上添加一个 target 属性,属性值指向 <ifream></ifream> 标签的name 属性。target 属性也就是当表单提交后,会自动跳转到 target 对应的地址上。这里表示提交表单后,跳转到ifream 层。
  1. 添加一个 <ifream></ifream> 标签,并添加行内样式使其为不可见状态(dispaly: none)
  1. 接收响应消息的 js 如下

    //提交申请单后接收响应消息
    ("iframe[name=iframeContent]").on("load", function() { var responseText = ("iframe")[0].contentDocument.body.innerHTML;
    const jsonResponse = JSON.parse(responseText);
    if (jsonResponse.code == 0) {
    layer.open({
    title: '提示', icon: '1', content: jsonResponse.msg, time: 2000, end: function () {
    window.close(); // 关闭表单页面
    }
    });
    } else {
    layer.alert(jsonResponse.msg, {
    title: '申请失败', icon: 5, time: 5000
    });
    }
    });

整体流程就是:当提交表单后,会自动跳转到 <form> 标签内 target 属性值对应的地址上,即在 ifream 层,这样返回的结果就存在了 ifream 层。通过监听 ifream 层的 load 事件,ifream 加载完成就会触发 load 事件,有数据就会获取。

相关推荐
旧梦吟24 分钟前
脚本网站 开源项目
前端·web安全·网络安全·css3·html5
我有一棵树27 分钟前
解决 highlight.js 不支持语言的方法
开发语言·javascript·ecmascript
北极糊的狐33 分钟前
按钮绑定事件达成跳转效果并将树结构id带入子页面形成参数完成查询功能并将返回的数据渲染到页面上2022.5.29
前端·javascript·vue.js
幽络源小助理34 分钟前
幽络源二次元分享地址发布页源码(HTML) – 源码网免费分享
前端·html
全栈前端老曹37 分钟前
【ReactNative】页面跳转与参数传递 - navigate、push 方法详解
前端·javascript·react native·react.js·页面跳转·移动端开发·页面导航
用泥种荷花1 小时前
【前端学习AI】Python环境搭建
前端
老华带你飞1 小时前
考试管理系统|基于java+ vue考试管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
_Kayo_2 小时前
React上绑定全局方法
前端·javascript·react.js
愈努力俞幸运2 小时前
chrome 扩展(插件)开发入门教程
前端·chrome
练习前端两年半2 小时前
【Vue3 高级技巧】函数重载+Watch:打造类型安全的通用事件监听 Hook
前端·javascript·vue.js