Javascript 可以给我<;脚本>;标记内部<;表>;?
我在一个表中添加了一个标记,因为PHP在表中编写了一个代码,将内容添加到先前创建的Javascript数组中。但是,我得到一个验证错误(4.01严格) 我有没有办法做到这一点,或者干脆禁止保存这样的脚本:Javascript 可以给我<;脚本>;标记内部<;表>;?,javascript,html,doctype,script-tag,Javascript,Html,Doctype,Script Tag,我在一个表中添加了一个标记,因为PHP在表中编写了一个代码,将内容添加到先前创建的Javascript数组中。但是,我得到一个验证错误(4.01严格) 我有没有办法做到这一点,或者干脆禁止保存这样的脚本: <TABLE> <TR> <SCRIPT></SCRIPT> <TD> </TD> </TR> </TABLE> (这可能更好吗?)
<TABLE>
<TR>
<SCRIPT></SCRIPT>
<TD>
</TD>
</TR>
</TABLE>
(这可能更好吗?)
更改doctype?您认为呢?是不允许的,因为TR
的内容模型被定义为(TH|TD)+
:
其中,定义为:
<!ENTITY % flow "%block; | %inline;">
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
定义为:
<!ENTITY % flow "%block; | %inline;">
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
定义为:
<!ENTITY % special
"A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
自从HTML5发布以来,在大多数类型的表元素(包括
tr
s)中使用
是合法的
在,您可以看到、、和的内容模型都包含“流内容”或“一个或多个脚本支持元素”。分别在和处,我们看到script
s被定义为流内容和脚本支持元素,因此允许在这些元素中的任何一个中使用
值得注意的例外是s(只能包含col
s和template
s)和s(不能包含内容)。您不能将脚本
放在这两个脚本中
这意味着询问者的示例HTML中包含tr
<TABLE>
<TR>
<SCRIPT></SCRIPT>
<TD>
</TD>
</TR>
</TABLE>
。。。现在有效,您可以在确认
,声明允许在
td
s中使用script
s,但不允许tr
s,这对于HTML4是正确的,但现在已经过时了。我认为您至少应该使用XHTML。HTML4与IE6非常相似。@leppie使用XHTML时,实际上不应该有内联脚本块。如果到处都是内联脚本,那么假装HTML是XML只会导致额外的问题。@leppie:XHTML也是一个正在消亡的标准;HTML5是未来。我有大量的内在事件,所以XML不适合我yet@Andreas博尼尼:HTML5的最终定稿日期是2018年,我可以等。这个答案已经过时了<代码>脚本s insidetr
s自HTML5起是合法的。我已经贴了我自己的。
<TABLE>
<TR>
<SCRIPT></SCRIPT>
<TD>
</TD>
</TR>
</TABLE>