http://validator.w3.org/check?uri=http%3a%2f%2fmotcombegarage%2eco%2euk%2f
从我可以告诉它似乎是说以下代码示例是无效标记WTF !!!
<html>
<head> ... header stuff ... </head>
<body>
<form method="post" action="" id="ctl01">
<div class="aspNetHidden">
<input type="hidden" name="ctl09_HiddenField" id="ctl09_HiddenField" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTY1NzEyODQ1M2RkJPtW5VtaL7LPuSxnn1JM1yVnOeGAovb8b4b3KShHy4M=" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwKt17cxAr+s9MgFAqjXzJsHz7KyzLpZjYtTK89blY7GgKAElK/5syvVNn4h7rVehcQ=" />
</div>
... other code ...
</form>
</body>
</html>
如果代码实际上无效,这给我带来了两个问题:
这是一个错误还是我做错了什么?
编辑: 正如Peter O在下面指出的那样,我在我的标记中添加了缺少的div标签...将其与验证器使用的标记进行比较表明,这个div虽然存在于标记中显然不值得验证...所以有点改变了问题......为什么忽略那个div? ...
看起来有点奇怪,你不能直接在表单标签中放入一个输入标签,但是...肯定是表单标签的一点,包含输入标签?
答案 0 :(得分:1)
INPUT元素应放在DIV元素中,如下所示:
<form ... >
<div>
<input type="hidden" ... />
<input type="hidden" ... />
<input type="hidden" ... />
</div>
</form>
答案 1 :(得分:1)
根据您网页上的代码,我似乎摆脱了消息的唯一方法是为第一个隐藏输入分配一个值
<div class="aspNetHidden">
<input type="hidden" name="ctl09_HiddenField" id="ctl09_HiddenField" value="toverton" />
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTY1NzEyODQ1M2RkJPtW5VtaL7LPuSxnn1JM1yVnOeGAovb8b4b3KShHy4M=" />
</div>
在所有可能性中,这很可能是一个错误。