在GoogleWebApp中,加载到tinymce内联编辑器进行编辑的电子表格中的HTML标记看起来是正确的,但在提交表单时不会保存。
我将标记加载到一个隐藏的文本区域,然后将该内容插入到为tinymce内联编辑器设置的div(class=“divEdit”)中。(如果我将标记文本直接放在DIV中,它将作为文字文本而不是解释的html保存)。我将相同的内容保存到tinymce为编辑器输入创建的隐藏输入元素的innerHTML中——tinymce使用div的ID作为隐藏输入元素的名称。
以下是javascript代码:
window.addEventListener('load', (event) =>{
var x, i;
x = document.querySelectorAll(".divEdit");
for (i = 0; i < x.length-1; i++) {
var tid=x[i].id; //get ID of each DIV which also is NAME of associated tinymce hidden input
var hid="h"+tid; //ID of my hidden textarea paired with the DIV
var htm=document.getElementById(hid).value; //hidden textarea holding HTML markup
document.getElementById(tid).innerHTML=htm; //set DIV innerHTML as the html markup
var tEle=document.getElementsByName(tid)[0]; //the hidden input element created by tinymce
//method A -- appears to work, but content not saved on form submit:
tEle.innerHTML = htm; //set hidden input value as the html markup to be edited.
在开发人员工具中查看时,这一切看起来都很好:在开发人员工具中从浏览器截屏,在Div中显示标记和隐藏的输入元素
但是当表单被保存时,tinymce编辑器中的任何内容都不会被保存——然而,如果我不清除表单,而是第二次重新提交表单,那么标记就会被正确保存!
我还尝试在循环中使用tinymce方法将html标记保存到Div:tinymce.get(tid). getBody(). innerHTML=htm;当这起作用时,tinymce没有处理将标记从编辑器Div保存到它的隐藏输入。
基本上,tinymce似乎没有启动(初始化?)使用导入的内容,直到手动激活编辑器实例。我尝试在加载时初始化tinymce,它确实激活了编辑器接口的所有实例,但在表单第一次提交时仍然没有捕获html标记,至少我尝试过的方式是这样。这是一个问题,因为表单中的非html元素可以编辑,而所有html元素保持不变。
我需要做什么不同的事情?非常感谢您的见解。
经过额外的实验,javascript的解决方案如下:
window.addEventListener('load', (event) =>{
var x, i;
x = document.querySelectorAll(".divEdit");
for (i = 0; i < x.length-1; i++) {
var tid=x[i].id;
var hid="h"+tid;
var htm=document.getElementById(hid).value;
tinymce.get(tid).getBody().innerHTML = htm;
}
tinymce.triggerSave();
}
我正在使用ITextRenderer从html生成PDF。然而,我得到以下异常: 你能帮帮我吗? 任何帮助都将不胜感激。 先谢谢你。
我是PHP新手,不知道自己做错了什么。我可以打开html表单并提供数据,但当我点击submit时,它会显示php代码,并且数据库(显然)没有更新。我已经尝试过通过phpMyAdmin手动将值插入表中,并且效果很好。我在网上看过,但我的语法看起来不错。我做错什么了吗?如果错误不太明显,是否有有效的调试方法(即查看错误)? 我有超文本标记语言代码 这是PHP代码 这张表位于phpMyAdmin的数据库
我能够使用JSTL以JSP形式显示bean的数组列表,方法是循环遍历列表并在HTML输入标记中输出bean属性。 如何对JSP进行编码,以便在页面提交时更新的值位于的适当项中?
我试图创建一个简单的HTML表单,通过MySQL保存信息,但我有一些问题连接到数据库。我认为$db_selected=mysql_select_db(DB_NAME,$link);给了我问题。仅供参考DB_NAME是我要使用的数据库表。 超文本标记语言 我的PHP
我试图在HTML的pre标签中包装文本,但它不起作用。我使用下面的CSS作为我的标签。 我从如何在pre标记中换行文本? 我已添加
我正试图用Thymeleaf创建一个基于Spring Boot的应用程序。我使用PetClinic样本作为起点。我的应用程序找不到某些模板。 我的项目以标准方式设置: 波姆。xml MyWebApplication.java 家庭控制器。JAVA home.html layout.html application.properties是空的。 当我导航到时,我得到错误: 解析模板“{fragmen
我的应用程序中有一个webView。webView最初会打开一个我创建的HTML页面,页面上有几个按钮。这些按钮执行各种任务(我正在尝试学习如何使用webView),例如:1)显示android toast,2)显示javascript警报,3)振动手机,4)显示当前地理位置,5)在webView中打开谷歌地图。 最后一个坏了。我搜索过这个网站和其他很多网站,但没有找到一个有效的解决方案。 我相当
过滤完成后,如果列表值与输入值均不匹配,我将尝试显示“未找到”文本。我使用了不同的方法,但不起作用,下面是我的代码。提前谢谢你。 我使用了一种方法,在html上添加了div text,并将其分类为“text”,样式为“display:none”,然后在js:document中的“else”下面添加了这段代码。getElementById(“文本”)。风格显示=“无”。之后,当您在输入中键入内容时,