PHP数组问题

时间:2010-08-20 01:10:19

标签: php html

我将cat[]数组值放在fornameid属性中是否正常。

<label for="cat[]">' . $cat['category'] . '</label>
<input type="checkbox" name="cat[]" id="cat[]" value="' . $cat['id'] . '" />

3 个答案:

答案 0 :(得分:1)

不,只是名称(传递到服务器端),ID必须是唯一的,没有特殊字符,并且不能以数字开头。

答案 1 :(得分:1)

简答:否。

长答案

不,因为:

  • 方括号是for和id属性的无效字符。
  • 在name属性中使用方括号向php发出信号以创建数组。这意味着您有多个名称为cat[]的表单元素。但是,id属性必须是唯一的。因此,您不能将id和名称相等。如果你没有为每个复选框都有一个像样的唯一ID,那么只需增加cat。因此,第一个复选框的ID为cat1,第二个ID为cat2,依此类推。
  • 如果您创建了多个具有相同id属性的复选框,则标签元素将不知道指向哪些输入,因为for属性无法唯一标识输入。这会产生不可预测的行为,并且首先有一个for属性毫无意义。

答案 2 :(得分:0)

来自w3C

字符“[”不允许在“for”

的属性值中

字符“[”不允许在属性“id”的值

试一试 validator