HTMLInput名称可以采用数组之类的值

时间:2011-07-19 07:43:36

标签: html input

这是我今天再次浮出水面的一个古老的疑问 来自ASP.NET背景我很惊讶地看到这个片段

<input name='text[en]' value='aaaaaa' />

这是我第一次看到像name一样的数组 我知道这段代码运行了。

我的怀疑是,

  1. 此标记有效吗?
  2. name支持哪些值?
  3. 我在哪里可以看到W3C规范?

3 个答案:

答案 0 :(得分:2)

此html无效

请参阅下面的w3c html规范:

  

ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(“ - ”),下划线(“ _“),冒号(”:“)和句号(”。“)。

src:http://www.w3.org/TR/html401/types.html

的第6.2节

“NAME”属性的值中不允许使用“[”和“]”。

并且,asp.net不支持这个,虽然一些PHP代码可以做到这一点。

答案 1 :(得分:1)

答案是肯定的,但它只是字符串。

您可以使用<input name="test[]" />

并且您将在名为“test”的数组中收到名为“test []”的所有输入的数组

你可以阅读所有这些内容 here

答案 2 :(得分:1)

1 - 是的,这是可能的。

2 - 名称类型为CDATA:

  

CDATA

     

CDATA类型的属性值由一系列字符组成   可能包括实体。每次运输时都会忽略换行   return和tab被替换为空格。浏览器可能会忽略前导   和属性值中的尾随空格。

     

CDATA属性值通常区分大小写,尽管如此   不是所有采用CDATA值的属性的情况。

3 - 也许这有帮助:http://www.w3.org/TR/html4/interact/forms.html#h-17.4