Javascript 允许将列表包装到段落中的配置

Javascript 允许将列表包装到段落中的配置,javascript,html,tinymce,Javascript,Html,Tinymce,我正在使用tinymce 3.5.5。我有以下有效\u元素/有效\u子元素的配置 valid_elements: "@[id|class|title|style|onmouseover]," + "a[name|href|target|title|alt]," + "#p,blockquote,-ol,-ul,-li,br,img[src|height|width],-sub,-sup,-b,-i,-u," + "-span[data-mce-type],hr", valid_children

我正在使用tinymce 3.5.5。我有以下有效\u元素/有效\u子元素的配置

valid_elements: "@[id|class|title|style|onmouseover]," +
"a[name|href|target|title|alt]," +
"#p,blockquote,-ol,-ul,-li,br,img[src|height|width],-sub,-sup,-b,-i,-u," +
"-span[data-mce-type],hr",

valid_children: "body[p|ol|ul]" +
",p[a|span|b|i|u|sup|sub|img|hr|#text]" +
",span[p|a|b|i|u|sup|sub|img|#text]" +
",a[span|b|i|u|sup|sub|img|#text]" +
",b[span|a|i|u|sup|sub|img|#text]" +
",i[span|a|b|u|sup|sub|img|#text]" +
",sup[span|a|i|b|u|sub|img|#text]" +
",sub[span|a|i|b|u|sup|img|#text]" +
",li[span|a|b|i|u|sup|sub|img|ol|ul|#text]" +
",ol[li]" +
",ul[li]",
编辑器初始化之前my textarea的内容:

<textarea name="content">
    <p>
      <ul>
        <li>list_elem</li>
      </ul>
    </p>
</textarea>
<p>&nbsp;</p>
  <ul>
    <li>list_elem</li>
  </ul>
<p>&nbsp;</p>


  • 列表元素

编辑器初始化后的内容:

<textarea name="content">
    <p>
      <ul>
        <li>list_elem</li>
      </ul>
    </p>
</textarea>
<p>&nbsp;</p>
  <ul>
    <li>list_elem</li>
  </ul>
<p>&nbsp;</p>

  • 列表元素

Tinymce从段落中删除列表,即使配置应使其有效

我为此制作了一把tinymce小提琴: 感谢您的帮助

我需要定义/设置什么才能允许列表作为段落的子项?

解决方案 你不能。你的浏览器不允许你这么做。您需要编辑浏览器行为和标准。最好的解决办法是用叉子叉铬,并根据您的需要进行调整

解释
p
DOM元素只能包含inline元素。()()

开始标记是必需的。如果
元素后面紧跟着
元素中允许标记的
,则可以省略结束标记

内容:



,,,,,,,,,,,,,,
和纯文本(不仅包含空格字符)。

可能重复+1。嗯,我想我可以调整tinymce配置以达到目标。我没想到浏览器不允许我使用。@Thariama您可能会让
TinyMCE
按您希望的方式运行,但您永远不会在浏览器中看到它,因为如果TinyMCE向任何流行浏览器发送

,它会将其解释为
        。(我知道这很糟糕……您可能想尝试其他元素,例如
        div
        或类似的容器元素?)我认为带列表的div是有效的。问题是我不能仅仅从段落切换到div,因为我自己的复杂插件只处理paragraphs@Thariama如果我能找到别的选择,我会回来找你的。那太好了。谢谢你。