具有 html5 必需属性的 tinyMCE 文本区域的表单无法提交

2023-12-30

这不是一个问题,而是一个我想与大家分享的答案。我刚刚花了四个多小时的时间来研究一些东西,结果发现它是 TinyMCE 或 Firefox 中的一个错误。

加载 TinyMCE 后,如果指定 HTML5required上的属性textarea该表单不会在 Firefox 中提交。没有错误,Firebug 中没有任何内容,只是顽固地拒绝提交。

我不知道这是 FF 还是 TinyMCE 的 bug,也不在乎。我只是不想让其他程序员经历我在过去几个小时所经历的烦恼。

问一个问题:这个错误是否记录在任何地方?有人知道吗?

如果这是一个不适合 Stack Overflow 的帖子,请告诉我,我会删除它。


这个问题远不是 Firefox 的问题。事实上,Chrome 和 Opera(在“大脑”被移植到 Chrome 之前的“老”歌剧)以及可能所有其他现代浏览器都会给你带来同样的头痛。

对于 Opera 和 Chrome,都有一个标志坚持认为该字段是必填字段(尽管事实上您有内容)。 Chrome 足够好,可以在控制台中向您显示以下错误消息:

An invalid form control with name='<name of textarea>' is not focusable.

当您考虑到 TinyMCE 实际上创建了一个可编辑的div容器,隐藏你原来的textarea。就是这个隐藏的textarea(承载一个required属性),浏览器希望您为其提供值。

在 Github 上,这里:https://github.com/tinymce/tinymce/issues/2584 https://github.com/tinymce/tinymce/issues/2584,有一个建议的解决方案,如下所示:

// fix tinymce bug
        if($this.is('[required]')){
            options.oninit = function(editor){
                $this.closest('form').bind('submit, invalid', function(){
                    editor.save();
                });
            }
        }

我还没有亲自测试过这个片段,但是只要您能够将其放到正确的位置,研究它可能会让您继续前进。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有 html5 必需属性的 tinyMCE 文本区域的表单无法提交 的相关文章

  • 用隐藏单元格补充 colspanned 表格有什么不好吗?

    我一直在表格上开发一些排序和选择功能 我发现在具有跨单元格的表格中定位非常困难 我只是添加了跨区单元格并将其隐藏 它看起来不错 它与我的 js 一起工作 非常适合索引 但我想知道这是否是合法的方法 stuffing display none
  • 防止浮动换行,直到元素达到最小宽度

    我有可变宽度的 HTML 布局 内容左侧有一个固定宽度的菜单 div 可变宽度 由 css max width 和 min width 设置 对于非常窄的浏览器窗口 我希望内容包裹在菜单下方 我目前通过设置来实现这一点float left在
  • iOS7 中“-webkit-overflow-scrolling: touch” 最初的屏幕外元素被破坏

    既然转基因种子已经发布了 我们现在可以谈谈了 看起来 iOS7 中的 webkit overflow scrolling touch 已损坏 最初不在屏幕上的元素的触摸事件不会触发 或者在某些情况下只是不可靠 这是一个例子
  • 我可以停止 :hover 应用于元素吗?

    假设我有一些 CSS button hover font weight bold 我怎样才能防止 hover随意应用样式 我的目标用例是当元素被禁用时 例如 使用这个 HTML
  • 单击引导分页链接时调用 jquery 函数

    我想在单击引导分页链接时调用 jquery 函数 假设我想从第1页遍历到第2页 应该调用一个jquery函数 我正在使用以下代码 但它不起作用 ul pagination on click li function alert page ch
  • 防止文本区域出现新行

    我正在开发聊天功能 使用 Vue 并使用文本区域作为输入 以便溢出换行 并且对于编写较长消息的用户来说更具可读性 不幸的是 当用户按下 Enter 键并提交时 光标会在提交之前移动到新行 从而使用户体验感觉不佳 关于如何使用普通 Javas
  • Cordova 的 Google AdMob 插件,当我们单击添加并按后退按钮返回应用程序时,应用程序正在关闭

    我正在使用 Cordova 框架构建一个应用程序 我使用了 Cordova 的 Google AdMob 插件来显示我的应用程序中的添加 我的问题是当用户单击任何添加并尝试通过单击后退按钮返回应用程序时应用程序正在关闭 用户必须从头开始 我
  • 无法更改 SVG 元素的类名

    我想通过单击按钮来更改应用于 SVG 的类 代码是here http jsfiddle net p19rnmev 我的 SVG 看起来像
  • 使用 CSS 删除不需要的表格单元格边框

    我有一个奇怪且令人沮丧的问题 对于简单的标记 table thead tr th 1 th th 2 th th 3 th tr thead tbody tr td a td td b gt td td c td tr tr class o
  • SVG img keepAspectRatio Chrome

    当我对 SVG 文件中的图像使用preserveAspectRatio none 时 它 似乎在 Google Chrome 中不起作用 SVG 不会根据图像宽度和高度进行缩放
  • 上传图像 onclick 多个蒙版图像

    一旦用户单击蒙版图像 我们就允许用户上传自定义图像 如果有单个蒙版图像 则效果很好 https codepen io kidsdial pen jJBVON https codepen io kidsdial pen jJBVON 要求 但
  • scrollWidth/scrollHeight 给出无效尺寸

    如所述https developer mozilla org en Determining the dimensions of elements https developer mozilla org en Determining the
  • UL 标签内的标签 H3 [重复]

    这个问题在这里已经有答案了 可能的重复 UL 中是否允许除 LI 之外的任何内容 https stackoverflow com questions 6056142 is anything except lis allowed in a u
  • iOS Safari 通过单击按钮触发扫描信用卡

    您好 我目前正在创建一个测试应用程序 当用户单击文本字段名称或卡号时 扫描信用卡功能对我有用 我的问题是 我希望当用户单击 button1 时发生同样的情况 这应该打开相机来扫描卡并填充现有的文本字段 即名称 卡号和到期日期 额外的好处是
  • 如何淡化循环背景图像?

    这里的菜鸟 我试图让我的静态背景变成一个轮播 我当前的html看起来像这样 div class pageContent div 和我的CSS body background url http placehold it 1600x1200 n
  • 将一个文本框的内容复制到另一个文本框

    假设在文本框中输入了一个条目 是否可以在第二个文本框中保留相同的输入文本 如果是这样 这是如何完成的
  • 如何在 WordPress HTML 中包含“onclick”对象

    我正在尝试将 onclick 对象添加到触发事件的单站点 即而不是多站点 WordPress 中的页面 代码是 a href Send a voice message a 当尝试保存代码时 WordPress 会删除 onclick 对象
  • 如何改变HTML5视频的播放速度?

    如何更改 HTML5 中的视频播放速度 我查过视频标签的属性 https www w3schools com html html5 video asp在 w3school 但无法做到这一点 根据这个网站 http www chipwreck
  • 使用 jquery 将字符串数组转换为整数

    我正在尝试将 jquery 中的字符串数组转换为整数数组 这是我的尝试 var cdata data values split each cdata function i l l parseInt l 我认为在这种情况下你不需要使用 Jqu
  • 使用 html5 分块上传文件

    我正在尝试使用 html5 的文件 API 分块上传文件 然后在服务器端用 php 重新组装它 我正在上传视频 但是当我在服务器端合并文件时 大小增加了 并且它变成了无效文件 请注意 以下 html5 代码仅适用于 chrome 浏览器 在

随机推荐