我不知道为什么我在http://validator.w3.org/check检查我的网页时一直收到此错误 错误是:
Line 46, Column 68: The for attribute of the label element must refer to a form control.
<label class="environment-label" for="environment_form">Environments:</label>
我相信我为label
提供了外部表单的ID引用,为什么它一直在告诉我这个错误?
<div>
<form id="environment_form" method="post">
<div class="styled-select">
<label class="environment-label" for="environment_form">Environments:</label>
<select name="environment_dropdown" onchange="selectionChanged()">
<option @(ViewData["selection"] == null || string.IsNullOrEmpty(ViewData["selection"].ToString()) ? "selected" : "")>select one</option>
@foreach (string name in Model) {
<option @(ViewData["selection"] != null && ViewData["selection"].Equals(name) ? "selected" : "")>
@name
</option>
}
</select>
</div>
</form>
</div>
答案 0 :(得分:26)
你有这个:
for="environment_form"
它直接引用表格!但是“for”属性应该引用表单中的元素,在您的情况下应该引用select。因此,在您的选择中添加“id”属性并更改“for”,如下例所示:
<label class="environment-label" for="environment_dropdown">Environments:</label>
<select name="environment_dropdown" id="environment_dropdown" onchange="selectionChanged()">