V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
dreambakerq
V2EX  ›  JavaScript

请教一个 js 提交 iframe 表单在 chrome 浏览器不生效的问题

  •  
  •   dreambakerq · 40 天前 · 886 次点击
    这是一个创建于 40 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位好,最近我在维护一个旧 OA 系统审批功能。

    正常流程大致是: 审批人打开页面,iframe 中的表单会填充名称,页面上点击审核完成的按钮时,提交表单后台保存,然后进行后续流程处理。firefox 下上述流程正常。

    现在的问题是: 奇安信 chrome 内核浏览器下,提交表单的这步被略过,直接执行了后续流程处理。

    提交表单的方式是:(尝试了 js 和 jquery 都有问题)

    	$(window.frames['tabcont'].document).find('form').submit();
    

    尝试过将提交表单之后的逻辑代码去掉,就又能正常。

    想请教下有没有改动比较小的修法,先谢谢各位大佬了。

    5 条回复    2024-11-01 18:45:36 +08:00
    zhhbstudio
        1
    zhhbstudio  
       40 天前
    submit 是个异步的动作,不管它是否完成继续执行了后边的脚本。
    zhhbstudio
        2
    zhhbstudio  
       40 天前
    #1 应该说是 submit 执行的提交之后是异步
    dreambakerq
        3
    dreambakerq  
    OP
       39 天前 via Android
    @zhhbstudio 像是没执行,在浏览器的开发者工具-网络,根本监测不到提交表单的请求
    zhhbstudio
        4
    zhhbstudio  
       38 天前
    @dreambakerq 那可能得看看 iframe (或 form ) 里边有没有啥特殊的东西了
    humbass
        5
    humbass  
       19 天前
    submit(), 先替换成读取 form 的操作,看看能不能正常打印?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5284 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:07 · PVG 17:07 · LAX 01:07 · JFK 04:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.