我正在使用几年前在asp / vbscript(旧的asp)中制作的cms,直到我们发布了dot net cms(应该很快),我们仍然坚持使用这个,但此刻我试图让它成为一个更多符合w3c标准...目前我们的cms仅在IE中...在页面编辑器中
你可以在预览状态和html模式之间来回切换,编辑器使用innerHTML来交换模式,但是innerhtml会使所有标签都处于上限状态,并使所有<LI>...</LI>
标签都像<LI>...
没有结束标签因为它是可选的...我可以使用正则表达式获取所有html标签和属性键并将它们交换到小写但我想知道是否有人知道更简单的方法这样做...我试着添加严格不幸的是模式doctype,因为编辑器的代码真的很旧,整个编辑器jsut分崩离析......
希望我们很快会发布我们的新cms,但它会有一段时间,直到我们将所有网站转移到新的cms,所以直到那时我试图改进我们的旧代码
有没有相当于innerHtml可以使代码更多w3c兼容AKA保持结束标记到我的<li></li>
所以我不开始使用正则表达式解析我的ccode并替换
?
TY
答案 0 :(得分:1)
如果我理解正确,答案是“不要这样做”,除非您要在“预览”模式下对代码进行任何更改。
如果预览只是简单预览(没有WYSIWYG),你应该这样做:
当切换到“预览”模式时,隐藏编辑器(….style.display='hidden'
或类似的东西),保留未修改的代码,并将其复制到预览元素的innerHTML。
切换回来时,您只需丢弃innerHTML中的代码并再次使用旧内容显示编辑器。