我必须在表中添加一个标记,因为 PHP 会在其中编写代码,将内容添加到先前创建的 Javascript 数组中。但是,我收到验证错误(4.01 严格)。
我有什么办法可以做到这一点,或者只是禁止保留这样的脚本:
<TABLE>
<TR>
<SCRIPT></SCRIPT>
<TD>
</TD>
</TR>
</TABLE>
(这可能更好吗?):
<TABLE>
<TR>
<TD>
<SCRIPT></SCRIPT>
</TD>
</TR>
</TABLE>
更改文档类型?你怎么看?
最佳答案
SCRIPT
TR
中不允许因为 TR
的内容模型定义为 (TH|TD)+
:
<!ELEMENT TR - O (TH|TD)+ -- table row -->
这意味着 TH
或 TD
的一个或多个元素。
但是 SCRIPT
在 TD
中是允许的。查看definition of TD
:
<!ELEMENT (TH|TD) - O (%flow;)* -- table header cell, table data cell-->
哪里parameter entity flow定义为:
<!ENTITY % flow "%block; | %inline;">
和inline定义为:
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
和special定义为:
<!ENTITY % special
"A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
关于javascript - <TABLE> 中可以有 <SCRIPT> 标签吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3658279/